【发布时间】:2013-12-28 18:29:59
【问题描述】:
大家好,我已经尝试解决这个问题一段时间了,我查看了许多论坛并试图了解他们试图通过使用 ActionScript 3 的代码来传达什么,但我仍然一无所获。我的主要目标是在舞台上有一个名为“mainPlayer”的角色现在我想设置触摸事件,以便当用户向上或左右拖动手指时,我希望 mainPlayer 跟随用户路径,或者如果用户触摸屏幕上的一个点并将手指保持在那里,mainPlayer 将被触摸吸引并移动到手指当前在屏幕上的点。
我见过很多实现了 Phase 和 ID 的东西,但并不真正了解发生了什么
到目前为止,这是我设置的:
public class realmEngine extends MovieClip
{
//MultiTouch gestures
Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
Multitouch.inputMode = MultitouchInputMode.GESTURE;
public var mainPlayer:mcPlayer;
//PlayerControls
private var speed:Number = 8.0;
public var vx:Number = 0;
public var vy:Number = 0;
private var friction:Number = 0.85;
private var maxSpeed:Number = 15;
public function realmEngine()
{
//Add Player to Stage
mainPlayer = new mcPlayer();
stage.addChild(mainPlayer);
mainPlayer.x = (stage.stageWidth / 2) - 300;
mainPlayer.y = (stage.stageHeight / 2 );
//trace("this works");
//Setup Touch Event listeners
mainPlayer.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin);
stage.addEventListener(TouchEvent.TOUCH_MOVE, onTouchMove);
stage.addEventListener(TouchEvent.TOUCH_END, onTouchEnd);
//Game Loop Event Listener
stage.addEventListener(Event.ENTER_FRAME, gameLoop);
}
private function gameLoop(e:Event):void
{
mainPlayerControls();
}
private function mainPlayerControls():void
{
}
private function onTouchEnd(e:TouchEvent):void
{
}
private function onTouchMove(e:TouchEvent):void
{
}
private function onTouchBegin(e:TouchEvent):void
{
}
}
我不确定要在 onTouch 函数中做什么,才能让我通过代码添加到舞台的对象跟随用户在屏幕上的触摸。
谁能带领我朝着正确的方向前进或给我任何建议?我真的很感激谢谢大家
【问题讨论】:
-
如果我理解正确,您是否希望对象既遵循用户绘制的路径又到达用户触摸的点?
-
是的,这正是我想要完成的。因此,只要您在屏幕上拖动手指,对象就会跟随它,并说您将手指移出屏幕,对象就会停止。你知道我应该做什么或如何解决这个问题吗?
标签: android actionscript-3 multi-touch touch-event