Frage

Ich habe eine SKSHAPENODE mit einem Kinder-Skemitternode. Ich habe eine Skaissequenz angehängt, in der die letzte Aktion removeFromparent ist. Der Knoten verhält sich ordnungsgemäß ohne den Emitter, der es handelt, um sich dann zu entfernen. Wenn der Emitter jedoch angehängt ist, stürzt das gesamte Programm ab (Ausführung springt zum Hauptverfahren und erscheint, wenn die SHAPENODE entfernt wird.

generasacodicetagpre.

Das Programm wird in beiden Fällen ausgeführt:

    .
  1. Ich füge den Emitter Ich füge nicht die RemoveFromparent-Aktion hinzu
  2. Ich vermute, das wird funktionieren, wenn ich einen Action an den Emitter zum RemoveFromparent (nach Says .9 Sekunden) anbringt, bevor die SHAFENODE entfernt wird, aber das scheint eine langwierige langfristige Lösung zu sein.

    weiß jemand, was mit einem Knoten mit untergeordneten Knoten passiert, in dem RemoveFromparent auf den übergeordneten Knoten angewendet wird oder wie ich dieses Problem beheben kann?


    UPDATE Basierend auf der Antwort von lerncocos2d

    In meinem vollständigen Code erzeugte ich tatsächlich einen Laser wie oben und kopiere ihn dann an einen zweiten Laser. Ich habe LerncocoS2D-Code von unten verwendet, der für einen Laser arbeitet, aber für zwei fehlschlagen. Die wichtigen Änderungen für meinen Code, basierend auf der Antwort von lerncocos2d lautet:

    generasacodicetagpre.

    Geben Sie Laserfire einen Namen ein und entfernen Sie es von übergeordneten, basierend auf diesem Namen, wenn Sie den Laser für den Einsatz klonen, wenn ich auf einmal mehreren Lasern feuert.

War es hilfreich?

Lösung

Ich kann bestätigen, dass dieser Abstürze.Ich habe eine Lösung entwickelt, die funktioniert.Wenn Sie den Emitter entfernen, bevor Sie den Formknoten entfernt, geht der Absturz weg:

generasacodicetagpre.

Wenn Apple-Fehlerberichte online zurückkommt, melde ich das als Fehler.Ich kann nicht erklären, warum das abstürzen würde.

Andere Tipps

Ich rannte darauf, als ich mehr als einen Emitter hatte, der an einem Sprite befestigt war.Der Trick, den ich gefunden habe, war, jedem Emitter seinen eigenen Namen nach dem Hinzufügen des Elternteils zu geben.Es scheint, als ob Spritekit den Namen intern verwenden muss, wenn er vom Elternteil entfernt wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top