2012-12-20 123 views
2

我正在使用flash和AS3为Android创建一个简单的游戏。我有基本的功能,多点触摸和触摸和拖动等我试图触发一个事件时,3个对象被拖动到用户屏幕的某一点,具体来说,跳到一个新的框架。下面显示的是我用来控制对象的触摸和拖动事件,但当我将所有3拖动到屏幕上的某个位置时,我对如何触发所需事件感到困惑。任何意见或方向将不胜感激。Adob​​e AIR 3.2 for Android AS3

Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT; 

Gem1_MC.addEventListener(TouchEvent.TOUCH_BEGIN, fl_TouchBeginHandler); 
Gem1_MC.addEventListener(TouchEvent.TOUCH_END, fl_TouchEndHandler); 


var fl_DragBounds:Rectangle = new Rectangle(0, 0, stage.stageWidth, stage.stageHeight); 

    function fl_TouchBeginHandler(event:TouchEvent):void 
    { 
     event.target.startTouchDrag(event.touchPointID, false, fl_DragBounds); 
    } 

    function fl_TouchEndHandler(event:TouchEvent):void 
    { 
     event.target.stopTouchDrag(event.touchPointID); 
    } 

回答

-2

你需要在你的游戏一个循环,在Event.ENTER_FRAME,测试每个对象的矩形对“胜利”区域(一个或多个)containsRect()方法会激发。 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Rectangle.html#containsRect()

你需要一个条件来确保所有3评估为true然后可以触发你的胜利条件。

你也可以在评分对象的运动上开启这个循环,但是如果你想要做一些事情就像有一个电脑控制的对手或者在游戏中做一个简单的演示并重用逻辑。