8 Stimmen

Dieselbe Aktion auf mehrere Sprites anwenden?

Ich möchte eine Aktion einmal erstellen und sie dann zu mehreren Sprites hinzufügen. Ich habe zum Beispiel ein "Monster", das eine Reihe von Beinen zu seinem Körper hinzugefügt bekommt. Jedes dieser Beine sind Kinder des Körpers, und ich möchte, dass sie sich hin und her drehen. Ich habe eine CCRepeatForever einer Folge von zwei CCRotateBy Aktionen, die hervorragend funktionieren. Ich kann die Aktion zu einem Bein hinzufügen, aber wenn ich sie dann zu einem anderen Bein hinzufüge, dreht sich das erste Bein nicht.

Ich möchte nicht für jede Etappe eine neue Sequenz erstellen - was für ein Aufwand! Es muss doch einen einfachen Weg geben!

EDITAR:

Ich habe es wie folgt implementiert, gemäß den Antworten von gixdev und Lukman... (Danke nochmal Lukman!)

[leg1 runAction:action]; // for the first time using the action
[leg2 runAction:[[action copy] autorelease]]; // for all subsequent uses

10voto

gixdev Punkte 570

Wenn Sie Ihre einmal erstellten Aktionen kopieren, hilft es Ihnen

[leg1 runAction:[action copy]];
[leg2 runAction:[action copy]];
...

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