2015-04-21 17 views
0

我正在爲ios/iphone/ipad製作攻略賽車遊戲。我有3個有觸角聽衆的物體。當汽車被觸摸或敲擊時,它們不會移動。有沒有辦法確定你正在接觸什麼物體?我曾嘗試e.currentTarget,但沒有奏效。這是我試過的代碼。在flash中,如何確定您觸摸的對象?

感謝您的任何提示,幫助或建議,你有。

//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

你的代碼是正確的。你試過了哪個模擬器? – Benny

+0

我沒有使用模擬器,我將它部署到Ipad。 – user629283

回答

1

Reading the Documentation告訴我們事件,如TouchEvents,確實有所謂的性質和targetcurrentTarget。顧名思義,目標屬性告訴我們點擊的是誰。

嘗試以下方法:(?我想這是一個單獨的類)

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 
} 
+0

謝謝,我結束了它的鑄造。 – user629283

相關問題