У меня есть несколько слоев, и я добавил к ним несколько спрайтов; Пытаюсь получить к ним доступ таким образом:
-(void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInView:[touch view]];
location = [[CCDirector sharedDirector] convertToGL:location];
if(CGRectContainsPoint([[self getChildByTag:tagNumber] boundingBox], location)) {
CCLOG(@"You've touched the sprite!");
}
}
странно то, что если нет этого метода:
-(BOOL) ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event
{
return YES;
}
мое приложение разбилось, когда я касаюсь экрана. Любая идея, что может быть?
ОБНОВЛЕНИЕ:
-(void) registerWithTouchDispatcher
{
[[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self
priority:0 swallowsTouches:YES];
}