我有一把枪,当在屏幕上的任何点上点击时,子弹会发射出去。但是根据我的要求,有3个枪(精灵),当触摸到任何一个精灵时,子弹必须向上射出。当我进行谷歌搜索时,我了解到可以通过使用targetedTouchDelegate或循环所有的精灵并为每个被触摸到的精灵设置标志来实现这一点。我已经看过了iPhone上的代码,但找不到Android的相关信息。请问有人可以告诉我如何在Android中实现这一点吗?或者提供一些关于cocos2d-android的链接或书籍,这对我和其他人都很有用。谢谢。
如果我遇到这种情况,我会通过以下方式获取我的精灵的矩形
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);
@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);
}
这是我的解决方法。