Actionscript 3 在更大的flash阶段插入迷你游戏?
我对这件事很陌生,所以如果答案很明显,我很抱歉。Actionscript 3 在更大的flash阶段插入迷你游戏?,actionscript-3,flash,actionscript,Actionscript 3,Flash,Actionscript,我对这件事很陌生,所以如果答案很明显,我很抱歉。 我用flash制作了两个800*640像素的小游戏,我想知道是否有办法将它们包含在主阶段,即1024*768,以及是否有可能在两个阶段之间传递一些变量的值,以便于评分。插入外部SWF: import flash.display.Loader; import flash.net.URLRequest; import flash.events.Event; import flash.events.ProgressEvent; function st
我用flash制作了两个800*640像素的小游戏,我想知道是否有办法将它们包含在主阶段,即1024*768,以及是否有可能在两个阶段之间传递一些变量的值,以便于评分。插入外部SWF:
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.ProgressEvent;
function startLoad() {
var loader:Loader = new Loader();
var URLreq:URLRequest = new URLRequest("directory\\minigame1.swf");
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);
loader.load(URLreq);
}
function onCompleteHandler(event:Event) {
movieclip.addChild(event.currentTarget.content);
movieclip.x = (stage.stageWidth - movieclip.width) / 2;
movieclip.y = (stage.stageHeight - movieclip.height) / 2;
}
function onProgressHandler(event:ProgressEvent) {
var percent:Number = event.bytesLoaded / event.bytesTotal;
}
startLoad();
您可以使用
LocalConnection
在两个SWF之间传递数据:
// Sender - minigame1 script
var lcs:LocalConnection = new LocalConnection();
lcs.send("local_connection1_name", "function_name", "minigame1", 100);
// Receiver - 'master' script
var lcr:LocalConnection = new LocalConnection();
lcr.connect("local_connection1_name");
lcr.client = this;
function function_name(mg:String,score:int):void {
trace(mg + ": " + score)
}
你熟悉使用类吗?如果你把你的每个小游戏都制作成一个类,然后在需要的时候把它们添加到舞台上,这将是非常简单的。通过将你的迷你游戏添加到舞台上,你可以有效地拥有你想要的任意多个“不同的舞台”。你在使用什么软件?你可以将你的小游戏加入到“主”阶段并传递变量。但是你需要用这种方式编程。谢谢你的帮助。你的建议正是我想要的。