我试图将精灵对象(英雄)移动到舞台上的开始触摸事件的当前位置。每当我触摸舞台时,它会读出当前的globalX
和globalY
坐标,但精灵会从舞台上消失,所以我不知道自己做错了什么。
这是我的代码:
private function onTouch(e:TouchEvent):void
{
var touch:Touch = e.getTouch(stage);
if(touch)
{
if(touch.phase == TouchPhase.BEGAN)
{
hero.x += touch.globalX;
hero.y += touch.globalY;
trace("Touched stage at position: " + touch)
}
else if(touch.phase == TouchPhase.ENDED)
{
//The Touch ended (MouseUp)
}
else if(touch.phase == TouchPhase.MOVED)
{
//dragging
}
}
}
答案 0 :(得分:0)
可能你的英雄精灵被添加到Spirte,其大小与你指定触摸事件的对象不同。你需要一个精灵,例如屏幕大小,英雄和事件添加到它。
希望有帮助:)