我需要咨询代码。我正在写业余“游戏”,一切都还在继续,但我对主Frame,代码可能太长以及调试器中某个长度的闪存冻结这一事实存在问题。申请冻结AS3
具体来说,我有很多MovieClip框架,其中更改其可见性,然后任何一个计时器和某些类型的条件if/else语句和功能用鼠标单击替换按钮。我知道它写得不好,但我是一个业余编程。如果你能帮我找到一些能够帮助我减少应用程序复杂性的东西,那么我会很高兴,因此我在目标前被迫退出。也许我可以写这样的东西。停止程序冻结。谢谢。
这里是主框架的示例代码:
import flash.events.MouseEvent;
import flash.events.Event;
flash.utils.Timer;
import flash.events.TimerEvent;
if (pavelON == true) {
pavel2.visible = true;
} else {
pavel2.visible = false;
}
if (petrON == true) {
petr2.visible = true;
} else {
petr2.visible = false;
}
if (martinON == true) {
martin2.visible = true;
} else {
martin2.visible = false;
}
if (zdencaON == true) {
zdenca2.visible = true;
} else {
zdenca2.visible = false;
}
if (danON == true) {
dan2.visible = true;
} else {
dan2.visible = false;
}
if (paziON == true) {
pazi2.visible = true;
} else {
pazi2.visible = false;
}
var countDownDec:Number = 1;
var totalSecs = 0;
var countDownSecs = totalSecs;
cas.text = countDownSecs;
var time:Timer = new Timer(countDownDec*1000);
time.addEventListener(TimerEvent.TIMER, tick);
function tick(e:TimerEvent):void {
if (countDownSecs == 120) {
trace("count down complete");
time.stop();
countDownSecs = totalSecs;
} else {
countDownSecs = countDownSecs + countDownDec;
cas.text = countDownSecs;
}
}
stage.addEventListener(Event.ENTER_FRAME, startTimer);
function startTimer(e:Event):void {
if(time.running == true) {
} else {
cas.text = totalSecs;
time.start();
}
}
var mcnm:Number = 2;
var mcnf:Number = 0;
var mcnt:Number = 0;
var hm:Number = 0;
mcnmt.text = mcnm.toString();
mcnft.text = mcnf.toString();
mcntt.text = mcnt.toString();
hmt.text = hm.toString();
pavel2.stop();
petr2.stop();
martin2.stop();
zdenca2.stop();
dan2.stop();
pazi2.stop();
pavel_prace.visible = false;
petr_prace.visible = false;
martin_prace.visible = false;
zdenca_prace.visible = false;
dan_prace.visible = false;
pazi_prace.visible = false;
upozorneni.visible = false;
var pavel2ON:Boolean = false;
var petr2ON:Boolean = false;
var martin2ON:Boolean = false;
var zdenca2ON:Boolean = false;
var dan2ON:Boolean = false;
var pazi2ON:Boolean = false;
upozorneni.zavrit.addEventListener(MouseEvent.CLICK,zavriClick);
function zavriClick(event:MouseEvent):void{
upozorneni.visible = false;}
pavel2.addEventListener(MouseEvent.CLICK,pavelClick);
function pavelClick(event:MouseEvent):void{
if ((pavel2ON == false)&&(mcnm > 0)){
pavel_prace.visible =true;
因为它是文本的有限长度的贡献的代码,然后在这里: http://www.filedropper.com/code_4
附上的SWF文件你可以看到这个功能。 https://ulozto.cz/!ab4C1i5yTJKG/kollmorgen3-swf(pass:“pomoc”) 故意结束括号,因为如果没有它们,现在它会冻结。我不知道Adobe Flash CS5.5的限制。
我怀疑你的代码太长。但是,你拥有的代码越多,输入错误的机会就越多,这肯定会导致错误。 –
为什么'zavrit'之前的'uporzanini.'?但'pavel'之前没有什么相似之处? –