действия на ощупь перенесены в cocos2d-iphone - PullRequest
0 голосов
/ 02 февраля 2012

Я пытаюсь начать разработку игр cocos2d. Итак, я новичок в cocos2d, но я разработал несколько приложений для iPhone. Я установил шаблоны cocos (v2.0) и создал новый проект с box2d phisics. Здесь я вижу демонстрационный проект с блоками и некоторыми меню. Когда я нажимаю на экран, появляется новый блок, который падает на экран. Чем должно быть реализовано здесь:

- (void)ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
    //Add a new body/atlas sprite at the touched location
    for( UITouch *touch in touches ) {
        CGPoint location = [touch locationInView: [touch view]];

        location = [[CCDirector sharedDirector] convertToGL: location];

        [self addNewSpriteAtPosition: location];
    }
}

так, спрайт появляется, когда касания заканчиваются. Но как сделать что-то, когда прикосновения начались или переместились? Я не могу найти методы для кокосов. Я видел несколько уроков, есть такой метод:

- (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event {
   return YES;
}

но никогда не звонил ... Что я не так делаю?

Ответы [ 2 ]

1 голос
/ 02 февраля 2012

Реализуйте

(BOOL)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

И убедитесь, что у вас есть

self.isTouchEnabled = YES;.

в вашем init методе для этого слоя.

0 голосов
/ 02 февраля 2012

Реализация:

- (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event {
       // whatever is needed here
       return YES;
}

в вашем классе cocos2d (тот же реализующий ccTouchesEnded), тогда он будет вызван.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...