3 Stimmen

CCMoveBy in cocos2d-iphone

Hallo zusammen ich verwende CCMoveBy, um ein Sprite am Laufen zu halten

if (abs(dff.x) > abs(dff.y)) {
    id action = [CCMoveBy actionWithDuration:1 position:ccp(10,10)];
    [sprite runAction:[CCRepeatForever actionWithAction:action]];
}
else {
    id action = [CCMoveBy actionWithDuration:1 position:ccp(5,5)];
    [sprite runAction:[CCRepeatForever actionWithAction:action]];
}

Wenn ich das Sprite nach links/rechts schiebe, geht es nach links/rechts, aber wenn ich es jetzt schiebe, geht es in die diagonale Richtung, nicht nach links oder rechts oder nach oben oder unten, was ist also richtig?

5voto

Adam Ashwal Punkte 1472

Heißt das, Sie wollen sich nur auf einer Achse bewegen? In diesem Fall müssen Sie einen der Werte in ccp() bei 0.

1voto

Matej Punkte 9082

Bewegen Sie y: ccp(0, 10) // 10 points up y axis

Bewegung x: ccp(10, 0) // 10 points right

Y invertieren Achse zu - wenn Sie den umgekehrten Weg gehen wollen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X