2013-05-20 70 views
5

我有1槍,當點擊任何一點在屏幕上的子彈發射,但根據我的要求,有3槍(精靈)時,任何一個子彈都必須點燃,當谷歌搜索時,我知道這是可以通過使用targetedTouchDelegate或循環所有的精靈併爲每個觸摸的精靈設置標誌,我已經看到了這個在iPhone中的代碼,但無法找到的Android,請任何人都可以告訴如何使用在Android中做到這一點?或者cocos2d-android的任何鏈接或書籍不僅對我有用,也對其他人有用。謝謝,如何讓精靈在cocos2d android中對觸摸做出反應?

+0

你有這個答案嗎? – 2013-07-15 13:08:49

+0

nope :(@ user26534你有什麼想法嗎? –

回答

0

那麼我會在這樣的情況下,做的是使用這種

CGRect projectileRect = CGRect 
       .make(sprite.getPosition().x 
         - (sprite.getContentSize().width/2.0f), 
         sprite.getPosition().y 
           - (sprite.getContentSize().height/2.0f), 
         sprite.getContentSize().width, 
         sprite.getContentSize().height); 

得到我的精靈的正確,而且如果點擊的點是在那個特定的精靈 的矩形,我會發現你可以覆蓋onccTouchBegin獲取點擊點,然後尋找衝突

@Override 
public boolean ccTouchesBegan(MotionEvent event) { 
    // TODO Auto-generated method stub 

    CGPoint touchLocation=CGPoint.ccp(event.getX(), event.getY()); 
    CGRect targetRect = CGRect.make(
      event.getX(), 
      event.getY(), 
      5, 
      5); 

     if (CGRect.intersects(projectileRect, targetRect)) 
        1st sprite is clicked 

    return super.ccTouchesBegan(event); 

} 

這是我的工作。

+0

感謝您的回覆,如何判斷第一個精靈是否被點擊?@Aashish Bhatnagar –

+0

只是一個例子,您可以針對不同精靈製作不同的rects,因爲我只有一個精靈 –