cocos2d Переместить спрайт с помощью кнопок

Используя CCMenu, я создал две кнопки вверх и вниз. Вот код

    CCSprite *normlUp = [CCSprite spriteWithFile:@"Up.png"];
    CCSprite *selectedUp = [CCSprite spriteWithFile:@"Up.png"];
    selectedUp.color = ccGREEN;

    CCMenuItemSprite *up = [CCMenuItemSprite itemFromNormalSprite:normlUp selectedSprite:selectedUp target:self selector:@selector(upItemTouched)];
    up.position = CGPointMake(-220, -115);

    CCSprite *normlDown = [CCSprite spriteWithFile:@"Down.jpeg"];
    CCSprite *selectedDown = [CCSprite spriteWithFile:@"Down.jpeg"];
    selectedDown.color = ccGREEN;

    CCMenuItemSprite *down = [CCMenuItemSprite itemFromNormalSprite:normlDown selectedSprite:selectedDown target:self selector:@selector(downItemTouched)];
    down.position = CGPointMake(-220,-140 );

    CCMenu *upDown = [CCMenu menuWithItems:up,down,nil];
    [self addChild:upDown z:4];

Как записать Методы
Также спрайт должен плавно перемещаться по экрану
Я новичок в cocos2d, поэтому, пожалуйста, примите мои простые вопросы........

1 ответ

Используйте CCMenuItemSprite, назначая добавление селектора для спрайта, поэтому при касании спрайта вверх / вниз будет вызван метод селектора. поэтому при касании "вверх" установите для одного логического значения значение true, а при касании "вниз" - для другого логического значения значение true.

Теперь в методе update/tick проверьте, какое логическое значение равно true, а затем переместите спрайт.

Когда движение завершено, в методе touchesEnded просто установите для этих логических значений значение false.

Другие вопросы по тегам