Программирование элементов управления для спрайта - PullRequest
0 голосов
/ 19 февраля 2012

Я пытаюсь сделать игру для змей на iPhone. Для этого я планирую использовать в качестве спрайта простую точку, которая рисует линию. Точка управляется двумя кнопками слева и справа от экрана, позволяя ей поворачиваться влево или вправо. Теперь я действительно не знаю, как заставить спрайт автоматически двигаться вперед и как запрограммировать поворот. Он не должен быть точно таким же, как у змеи, где он резко поворачивает влево или вправо, но должен быть более плавным изгибом. Я надеюсь, что вы поняли мою точку зрения, и я буду признателен за всевозможные мысли! Большое спасибо!

Несколько пытаюсь сделать так:

http://www.bnet.im/images/screen_curve.png

1 Ответ

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

Есть много способов сделать это, но одним простым способом было бы сохранить угол траектории змеи (я назвал это theta) и перемещать ее на фиксированную величину в каждом вызове на Update.

Предполагая, что класс змеи наследует от CCNode:

-(void)Update:(ccTime)dt {
    self.position = ccp(self.position.x + cos(theta)*dt,
        self.position.y + sin(theta)*dt);
}

Вы можете затем обновить theta из вашей логики обработки событий, увеличив ее или уменьшив, когда пользователь нажимает наповерните налево или направо.

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