我需要諮詢代碼。我正在寫業餘「遊戲」,一切都還在繼續,但我對主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'之前沒有什麼相似之處? –