Re: [問題] button按兩次後即跳出迴圈這如何寫?

看板Flash作者 (meglie)時間19年前 (2005/09/13 21:31), 編輯推噓5(5014)
留言19則, 4人參與, 最新討論串2/3 (看更多)
※ 引述《meglie (meglie)》之銘言: : 沒有笨問題 所以我又來問問題了~ : 請問利害的大大 : 假設有一button A 在迴圈裡, : 若按A一次一樣繼續執行,而按A第二次則跳出迴圈 : 請問我如何用AS寫 A再按第二次後才會跳出迴圈?? 抱歉..我講的太不清不楚了 我要做的遊戲是: 假如有 花費時間: _ _ _ Q1:現在拿1000元 ◎(button) Q2:一天 後拿 10000元 ◎(button) 你會選擇哪一邊?? 其中Q1的錢數 、Q2的錢數和天數都會改變如下: 除非連續兩次選擇 Q2,Q2的天數才會改變(由一天,變為一週...) 否則在同一時間裡,玩家每次的選擇 Q1的錢數會慢慢減少(由1000變為995,960...) Q2的錢數會一直增加(10000變為100000....每次增加一個0) 以下是我寫的AS... 我要問的是這個部份《除非連續兩次選擇 Q2,Q2的天數才會改變(由一天,變為一週..》 怎麼寫AS辨識button兩次選擇Q2以跳去下個時間呢?? 好難@___@ stop(); //Q1錢數陣列 q1_txt = ["1000","995","960","920","800","700","600","500","400","300","200","100","60","20","5"]; //Q2時間陣列 q2_time = ["一天","一週","兩個月","六個月","一年","五年","二十五年"]; //設定錢數迴圈 j=1; function rsq() { if (j<15){ _root.q1_mc.q1_txt.text = q1_txt[j]; _root.q2_mc.q2_txt.text += "0"; } j=j+1; return ; } //設定Q2時間 i=0; function timmer(){ if(i<7){ _root.q2_mc.q2_time.text = q2_time[i]; i=i+1; } setQ(); } setQ(); function setQ() { this.q1_mc.q1_txt.text = q1_txt[0]; _root.q2_mc.q2_txt.text = "10000"; _root.q2_mc.q2_time.text = q2_time[0+i]; //選Q1呼叫rsq _root.q1_mc.s1_btn.onRelease = function(){ rsq(); } (有問題的地方)@__@ //選Q2呼叫rsq var flag = false ; _root.q2_mc.s2_btn.onRelease = function(){ flag = true; rsq(); return flag; _root.q2_mc.s2_btn.onRelease = true ; rsq(); timmer(); } } //計時器 var startTime = (new Date()).getTime(); time.onEnterFrame = function() { var now = (new Date()).getTime(); this.time_ = Math.floor((now-startTime)/1000); }; -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.160.143.1

203.73.243.86 09/13, , 1F
說一個我的想法...就是用簡單的if...else...
203.73.243.86 09/13, 1F

203.73.243.86 09/13, , 2F
設一個變數var y=0然後第一個按鈕讓他按下去會y=0
203.73.243.86 09/13, 2F

203.73.243.86 09/13, , 3F
第二個按鈕按下去讓y=y+1 然後再去判斷如果y=2就
203.73.243.86 09/13, 3F

203.73.243.86 09/13, , 4F
改變文字輸出...這樣應該就可以了 不知道有沒有更
203.73.243.86 09/13, 4F

203.73.243.86 09/13, , 5F
好的方法...
203.73.243.86 09/13, 5F

218.160.143.1 09/13, , 6F
原來是再設一個變數...謝謝~我TRY出來了
218.160.143.1 09/13, 6F

218.160.143.1 09/13, , 7F
感謝大大點醒我~~!!^_________^
218.160.143.1 09/13, 7F

218.162.150.43 09/14, , 8F
好哲學的遊戲XD
218.162.150.43 09/14, 8F

61.62.226.170 09/14, , 9F
根本就不叫迴圈...
61.62.226.170 09/14, 9F

61.62.226.170 09/14, , 10F
本來flag就等於這個功用了
61.62.226.170 09/14, 10F

61.62.226.170 09/14, , 11F
只不過var flag = false應該在最外面宣告
61.62.226.170 09/14, 11F

61.62.226.170 09/14, , 12F
然後在flag = true;之前先做判斷
61.62.226.170 09/14, 12F

61.62.226.170 09/14, , 13F
if(flag ==false){flag = true;................}
61.62.226.170 09/14, 13F

61.62.226.170 09/14, , 14F
不過我看你應該是直接套用其他語言的觀念
61.62.226.170 09/14, 14F

61.62.226.170 09/14, , 15F
所以才會寫成這樣繁瑣的code
61.62.226.170 09/14, 15F

61.62.226.170 09/14, , 16F
但是ActionScript畢竟還是不太一樣
61.62.226.170 09/14, 16F

163.15.180.2 09/14, , 17F
說錯了~不是迴圈是function,因為還是新手...
163.15.180.2 09/14, 17F

163.15.180.2 09/14, , 18F
還在摸索中,只能用之前學的語言去套~會容易點
163.15.180.2 09/14, 18F

163.15.180.2 09/14, , 19F
請大大多多指點囉~~感謝!
163.15.180.2 09/14, 19F
文章代碼(AID): #139jIMH9 (Flash)
文章代碼(AID): #139jIMH9 (Flash)