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.