Ich benutze Sprit-Kit auf swift 3 meine Frage ist nach dem Schießen Kugeln auf einen Knoten (ich nannte es Planet) Ich will nicht, dass Knoten (Planet) verschwinden Ich will, dass nur Kugeln aus der Szene verschwinden und mein Knoten (Planet) läuft weiter und wenn dieser Knoten (Planet) mit dem Hauptspieler kollidiert, verschwinden beide (was hier kein Problem ist). Mein Problem ist, wenn Kugeln damit kollidieren Knoten beide wie immer in Kollisionsfunktion verschwinden i Bullet.removefromParent gerade geschrieben() hier ist mein Code (ich will meinen Planeten halten, nachdem sie mit Kugel und meine Kugel entfernen Szene kollidieren):SpritKit swift 3 Physik Körper Kollision und entfernen Sie nur einen Knoten
func CollitionPlannetWithBullet(_ Bullet : SKSpriteNode, Planet : SKSpriteNode){
Bullet.removeFromParent()
}
und das ist Der Code in hat den Kontakt functio begonnen n für den Planeten und Kugeln:
if ((firstBody.categoryBitMask == physicsCatagory.Planet) &&
(secondBody.categoryBitMask == physicsCatagory.Bullet)) ||
((firstBody.categoryBitMask == physicsCatagory.Bullet) &&
(secondBody.categoryBitMask == physicsCatagory.Planet)) {
CollitionPlannetWithBullet(firstBody.node as! SKSpriteNode, Planet: secondBody.node as! SKSpriteNode)
}
Sie selbst sind verwirrend, Ihre in if-Anweisung, sagen Sie body1 oder body2 Kugeln sein können, aber in Ihrem 'CollitionPlannetWithBullet' (Rechtschreibfehler?) Sie sagen nur body1 ist Kugel. Versuchen und konsistent bleiben – Knight0fDragon