Re: [問題] 如何判斷場景上沒有該物件?

看板Flash作者 (hello, ActionScript)時間12年前 (2012/02/22 18:26), 編輯推噓1(102)
留言3則, 1人參與, 最新討論串2/3 (看更多)
※ 引述《hot0903 (爆炸!BOOM BOOM~)》之銘言: : 我的元件庫裡有4個物件...分別匯出給Action Script使用.. : 名稱是:co_mc1 co_mc2 co_mc3 co_mc4 : 剛開始宣告 : var total_co:int = 100; : 用迴圈隨機出現這4個物件在場景上.... : var co:int; : for ( var i:int = 1; i<=total_coin; i++ ) { : co = Math.floor(Math.random()*4) + 1; : if ( co == 1 ) { : this["obj_mc" + i] = new co_mc1(); : } else if(co == 2){ : this["obj_mc" + i] = new co_mc2(); : }else if(co == 3){ : this["obj_mc" + i] = new co_mc3(); : }else { : this["obj_mc" + i] = new co_mc4(); : } : 之後利用拖曳的方式..將各個元件拖曳到指定位置後...物件就會從場景上消失.. : 然後我的問題是....現在我想要判斷場景上的co_mc3都消失後即可跳到"過關"畫面... : 但不知道這判斷式該怎麼寫....可以拜託會的人教教我嗎?? : 謝謝!!!!!!! 方法很多,講一個給你參考 先用個變數存 co_mc3 總共有幾個實體 var co:int; var num_mc3:int = 0; for ( var i:int = 1; i<=total_coin; i++ ) { co = Math.floor(Math.random()*4) + 1; if ( co == 1 ) { this["obj_mc" + i] = new co_mc1(); } else if(co == 2){ this["obj_mc" + i] = new co_mc2(); }else if(co == 3){ this["obj_mc" + i] = new co_mc3(); this["obj_mc" + i].ismc3 = true; // 方便用來判斷是否為 mc3 num_mc3++; }else { this["obj_mc" + i] = new co_mc4(); } 接下來每次有物件消失 就去判斷型態是否為 mc3 如果是就把 num_mc3 減掉 小於零就是 mc3 都消失了 if (this["obj_mc" + i].ismc3) { num_mc3--; if (num_mc == 0) { // GAME OVER } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.246.113

02/25 16:02, , 1F
謝謝~~~但是我有用你的方法...還是說有錯誤耶...
02/25 16:02, 1F

02/25 16:03, , 2F
ismc3那邊怪怪的....
02/25 16:03, 2F
看你前面的推文,你是用AS3吧? 那就把這行拿掉 this["obj_mc" + i].ismc3 = true; // 方便用來判斷是否為 mc3 if (this["obj_mc" + i].ismc3) 換成 if (this["obj_mc" + i] is co_mc3) ※ 編輯: jeaby 來自: 220.132.246.113 (02/29 16:06)

03/01 02:01, , 3F
謝謝~~~問題已解決!!!!!!!!!!
03/01 02:01, 3F
文章代碼(AID): #1FHCBYu2 (Flash)
文章代碼(AID): #1FHCBYu2 (Flash)