2011-11-24 93 views
0

我使用动作脚本3使Android游戏使用“空气为Android”动作脚本3触摸拖动hitTest

我做一个球,gole和StatusTxt。

我已经正确地结束了设计中的每一件事。

中的代码:

Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT; 
ball.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin); 
ball.addEventListener(TouchEvent.TOUCH_END, onTouchEnd); 

function onTouchBegin(e:TouchEvent) { 
    e.target.startTouchDrag(e.touchPointID); 
} 
function onTouchEnd(e:TouchEvent) { 
    e.target.stopTouchDrag(e.touchPointID); 
} 

if(gole.hitTestObject(ball)) 
     { 
      StatusTxt.text = "You hit it."; 
     } 

但StatusTxt并没有改变,为什么?

回答

1

您的测试不在活动中。您可以将其添加到onTouchEnd函数中。如果您想在TOUCH_END事件之外对其进行测试,则可以使用ENTER_FRAME事件。

所以它最终会看起来像这样:

function onTouchEnd(e:TouchEvent) 
{ 
     e.target.stopTouchDrag(e.touchPointID); 

     if(gole.hitTestObject(ball)) 
     { 
      StatusTxt.text = "You hit it."; 
     } 
} 

或与ENTER_FRAME这样的:

addEventListener(Event.ENTER_FRAME, onEnterFrame); 

function onEnterFrame(e:Event) : void 
{ 
     if(gole.hitTestObject(ball)) 
     { 
      StatusTxt.text = "You hit it."; 
     } 
} 
+0

谢谢你,我搜索一下这个约2小时。 –