android - cocos - coco 2d engine
¿Cómo hacer que los duendes reaccionen a los toques en el Android cocos2d? (1)
tengo 1 arma cuando toco en cualquier punto de la pantalla, las balas se disparan, pero de acuerdo con mi requerimiento hay 3 pistolas (sprites) cuando se tocan en cualquiera de los sprites. Las balas deben dispararse, cuando busqué en Google llegué a saber que esto puede ser hecho usando targetTouchDelegate o para recorrer todos los espíritus y establecer la bandera para cada sprite tocado, he visto el código para esto en iphone, pero no pude encontrar para android, por favor ¿alguien puede decir cómo usarlo en Android? o cualquier enlace o libro para cocos2d-android sería útil no solo para mí también para otros. Gracias,
Bueno, lo que haría en tal caso sería obtener el rect para mi sprite usando esto
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);
y detectaré si el punto cliqueado se encuentra en el rectángulo de ese sprite en particular, puede anularlo en CtouchBegan para obtener el punto cliqueado y luego buscar la colisión
@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);
}
Este es mi trabajo alrededor.