我的游戏以大字符串存储关卡。不是很长,在1080p屏幕上,长度大约是我桌面的一半。 Flash可以很好地处理它,但是当我执行类似
的操作时var levels:Array = ["Large String
gets broken up because of the len
gth"];
Flash IDE告诉我,我需要在新行之前结束字符串文字。我不能,因为它太长了。 (对于IDE,不是flash环境)
我该如何存储字符串?
答案 0 :(得分:5)
这样的事情:
private var myString:String = ( <![CDATA[
Large String
gets broken up because of the len
gth
]]> ).toString();
答案 1 :(得分:5)
您也可以在应用中嵌入文本文件,就像嵌入位图一样。
[Embed(source='test.txt', mimeType='application/octet-stream')]
private var TextData:Class;
...
var thing:String = new TextData();
trace(thing);
注意:mimeType的'text / plain'与编译器的编码不一致,因此是八位字节流。
答案 2 :(得分:2)
您可以在项目中包含任何txt文件并阅读它 - Reading the text file line by line and push to an array in AS3
或者,
var levels:Array = ["Large String" +
"gets broken up because of the len" +
"gth",
"Another Large String" +
"gets broken up because of the len" +
"gth"
];
这将为您提供如下数组:
["Large String gets broken up because of the length", "Another Large String gets broken up because of the length"]
或者,将整个字符串放在一行(没有任何换行符)。现在看起来好像是在放置换行符以使字符串更具可读性。
答案 3 :(得分:1)
也许您应该使用外部“.text”文件并通过URL Loader加载它?
它总能让游戏更具活力。