Привет всем, у меня есть проблема с обнаружением столкновения.cocos2d: обнаружение столкновений не работает правильно
я есть первый метод, который добавлять случайные объекты
-(void)initObjects{
int randomNumber = arc4random() % 5 + 1;
switch (randomNumber) {
case 1:
[self initEnemy];
CCLOG(@"Random number 1");
break;
case 2:
[self initJetpack];
break;
case 3:
[self initWine];
break;
case 4:
// [self initNight];
break;
default:
CCLOG(@"no number");
break;
}
}
тогда, когда будет выбрать метод родился объект, и если будет столкновение обнаружения удалить спрайт добавил
код в каждом методе объектов
[self schedule:@selector(collision) interval:1/60];
метод столкновения:
-(void)collision {
if (CGRectIntersectsRect([_hero boundingBox], [_enemy boundingBox])) {
CCLOG(@"Enemy collision intercect");
[self spriteMoveFinished:_enemy]; // It's method like [self removeChild:_enemy cleanup:YES];
[self unschedule:@selector(collision)];
} else if (CGRectIntersectsRect([_hero boundingBox], [_powerNight boundingBox])) {
CCLOG(@"PowerNight collision intercect");
// the same up
} else if (CGRectIntersectsRect([_hero boundingBox], [_wine boundingBox])) {
CCLOG(@"Wine collision intercect");
// the same up
} else if (CGRectIntersectsRect([_hero boundingBox], [_jetPack boundingBox])) {
CCLOG(@"Jetpack collision intercect");
//the same up
}
}
теперь интересный журнал
JetPack inizializated вина столкновения intercect (?????????), почему вино ??
враг inizializated Jetpack collision intercect (?????) почему jetPack ??
Но иногда это нормально
враг inizializated противника столкновения intercect
Где я неправ?
спасибо каждое тело приветствий
его хорошая идея, но не работает, и я не могу ответить и, для моей репутации не –
комментарии правильный способ общения. не пишите ответа, когда это действительно вопрос или комментарий;) – phlebotinum
@GabrieleCarbonai: Но это маловероятно - это означает, что вы * сделали * инициализацию этих объектов, когда вам этого не нужно. Возможно, вам придется показать нам больше вашего кода. – Voldemort