Итак, я работаю над игрой в Cocos2d для iPhone.Я использую Sneaky Input для обработки элементов управления для перемещения персонажа.Поскольку я хочу, чтобы персонаж оставался в центре экрана все время, чтобы получить видимость движения, я перемещаю все остальное в сцене, кроме персонажа.
Но вот моя проблема.Моей игре нужны враги, которые двигаются.Я думал о том, чтобы сделать что-то вроде:
id myAction = [CCMoveTo actionWithDuration:1.0f position:ccp(170, 0)];
[boss runAction:myAction];
И я бы положил это в таймер.Итак, я сделал это, и сначала не стал возиться с джойстиком, который перемещает все, и «босс» двигался туда, где я думал, что это будет.Но потом я перепутался с джойстиком.Хорошо, так что в основном все испортилось, ничто не переместилось в то место, которое я хотел, и так далее.Я подозревал, что это произойдет, но все равно попробовал.Теперь я понятия не имею, что делать.Чтобы было немного яснее, вот моя функция таймера:
-(void)tick:(float)delta {
// pressed
if (rightButton.active == YES){ //This is unrelated... its for something else in my game
[character stopAction:character_attack];
[character runAction:character_attack];
} //end unrelatedness
id bossMov = [CCMoveTo actionWithDuration:1.0f position:ccp(-170, 0)];
[boss runAction:bossMov];
[self applyJoystick:leftJoystick toNode:boss forTimeDelta:delta];
[self applyJoystick:leftJoystick toNode:background forTimeDelta:delta];
}
И мой таймер метода вызывается в init следующим образом:
[self schedule:@selector(tick:)];
Если вам нужна дополнительная информация, просто спросите.