我正在为ios / iphone / ipad制作点击赛车游戏。我有3个具有touchevent监听器的对象。当汽车被触摸或敲击时,它们不会移动。有没有办法确定你触摸的是什么物体?我已经尝试过e.currentTarget,但这不起作用。这是我试过的代码。
感谢您提供的任何提示,帮助或建议。
//has been added
Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
//
cars0.addEventListener(TouchEvent.TOUCH_BEGIN, gasOn);
cars1.addEventListener(TouchEvent.TOUCH_BEGIN, gasOn);
cars2.addEventListener(TouchEvent.TOUCH_BEGIN, gasOn);
private function gasOn(e:TouchEvent):void {
e.currentTarget.x+=10;
}
答案 0 :(得分:1)
Reading the Documentation告诉我们事件,例如TouchEvents,确实有名为target
和currentTarget
的属性。
顾名思义,目标属性告诉我们被点击的人。
尝试以下方法:
function gasOn(e:TouchEvent):void{
if(e.target == cars0){
//you clicked cars0
}else if(e.target == cars1){
//you clicked cars1
}else if(e.target == cars2){
//you clicked cars2
}
}
如果这不起作用,你可以尝试将event.target转换为汽车类(我假设它是一个单独的类?)。即:
function gasOn(e:TouchEvent):void{
//Car in this case would be your Class for the cars objects
var car:Car = e.target as Car;
if(car == cars0){...//same as above
}