2013-04-09 76 views
0

我正在創建一個互動遊戲,並希望用戶能夠將一個硬幣拖放到一個框中。一旦用戶完成了這個操作,他們就可以進入下一個場景,但是隻有當他們將硬幣放入正確的盒子時才能訪問下一個場景。AS3 - If語句 - 下一個場景

任何人都知道如何做到這一點?

回答

2

你想用結合一個MOUSE_DOWNMOUSE_UP事件監聽movieclip.startDrag()movieclip.stopDrag()處理拖放,那麼所有你需要做的就是當硬幣掉了hitTestObject(..)

的代碼是相當直接的結構:

coin.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown); 
coin.addEventListener(MouseEvent.MOUSE_UP, onMouseUp); 

function onMouseDown(e:Event):void 
{ 
    // When mouse button is held down, begin dragging coin movieclip 
    coin.startDrag(); 
} 

function onMouseUp(e:Event):void 
{ 
    // When mouse button is released, stop dragging 
    // the coin and check if is is over the box 
    coin.stopDrag(); 
    if(coin.hitTestObject(box)) 
    { 
    // Go to next scene 
    } 
} 
+0

感謝。硬幣拖動,但一旦硬幣已經下降,如何讓它播放下一個場景中的視頻? - 對if語句不太確定。感謝 – sjb

+0

我不斷收到此錯誤: 場景1,層「AS」,第1幀,4號線\t警告:1090:遷移問題:onmousedown事件事件處理函數不是在ActionScript 3.0中運行時由Flash Player自動觸發。您必須先使用addEventListener('mouseDown',callback_handler)爲該事件註冊此處理程序。 – sjb