überprüft, ob ein SKNode eine SKAction ausführt

7

Wie kann ich überprüfen, ob eine SKNode bereits eine Aktion ausführt, bevor eine Aktion ausgeführt wird? Ich möchte etwas wie ...

machen können %Vor%

Wenn es keinen eingebauten Weg gibt, denke ich darüber nach, eine neue Eigenschaft BOOL zu erstellen, um den Aktionszustand zu halten.

    
user2796283 25.09.2013, 15:51
quelle

2 Antworten

11

Sehen Sie sich die benannten Aktionen mit einer der Schlüsselmethoden von SKAction an. Daher würden Sie Ihre Aktion stattdessen mit dem benannten Äquivalent zu runAction: ausführen, was runAction:withKey: ist. Wenn eine Aktion mit demselben Schlüssel bereits ausgeführt wird, wird sie entfernt, bevor die neue hinzugefügt wird. Alternativ verwenden Sie actionForKey: , um zu sehen, ob eine Aktion bereits ausgeführt wird, so wie Sie es jetzt in Ihrem Code versuchen, und removeActionForKey: , um sie zu entfernen oder nach Bedarf zu behandeln.

    
Matt 25.09.2013, 16:01
quelle
14

Entschuldigung für die späte Antwort, aber Sie können die Sprite-Methode hasActions verwenden, um zu überprüfen, ob ein Sprite gerade irgendwelche Aktionen ausführt.

%Vor%     
Indi 15.11.2013 20:10
quelle

Tags und Links