Как изменить положение символов, как если бы я только менял камеру? - PullRequest
0 голосов
/ 21 мая 2011

Итак, я работаю над игрой в 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:)];

Если вам нужна дополнительная информация, просто спросите.

1 Ответ

0 голосов
/ 27 мая 2011

Разве вы не можете просто переместить слой, дочерним элементом которого являются все ваши элементы карты и враги, в противоположном направлении от вашего персонажа?

например. если ваш персонаж перемещается +1 на x, переместите слой -1 на x

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