So ist es eine sehr einfache Frage: Ich habe eine SKSpriteNode
fullPiece
und wenn es einen Punkt trifft, möchte ich es kopieren und die Kopie an einen anderen Elternteil übertragen. Also, was ich tue, ist diesWie man einen SkspriteNode kopiert, aber sie getrennt hält
Im Kopieren des Objekts, dann Entfernen der alten, dann die Kopie hinzufügen. Später entferne ich jedoch die Vollfigur wieder und die Kopie, oder was auch immer dort ist, verschwindet. Wie kann ich das richtig machen?
Ich weiß, das ein Jahr später, aber ich denke, die Linie 'var tempPiece = fullPiece' nicht' fullPiece' kopiert (als Klassen Referenztypen sind). Statt dessen geben Sie 'fullPiece' einen anderen Namen, um von' tempPiece' aufgerufen zu werden. Um einen 'SKSpriteNode' zu kopieren, müssen Sie die Methode' copy() 'verwenden. [Hier finden Sie ein Beispiel] (http://stackoverflow.com/questions/38928009/in-swift-is-it-possible-to-create-an-sksprittenode-by-directly-copying-it-from-a). Sie müssen jedoch vorsichtig sein, da es einen Fehler beim Kopieren von 'SKSpriteNode's gibt. Die 'physicsBody?' Eigenschaft scheint nicht kopiert zu werden. – mogelbuster