2016-06-01 6 views
0

In meinem SpriteKit-Projekt (Swift) verwende ich wie alle anderen auch die AutoFill-Funktion in Xcode. Aber wenn ich didBeginContact eintippe, kommt nichts. Ich versuche sogar, es so auszufüllen ...didBeginContact() in SpriteKit funktioniert nicht

func didBeginContact(contact: SKPhysicsContact) { 

} 

Aber es schafft nur eine Kleie neue Funktion. Ich tippe diese Funktion innerhalb einer Klasse aus, sie wird nicht auf einer anderen Seite erzeugt. Hat jemand dieses Problem schon mal gehabt? Und kennt jemand die Lösung?

+0

Es gibt keine IDE, die Code innerhalb der Klammer für Sie schreibt. Wenn es welche gäbe, was wäre dann Ihre Aufgabe? –

Antwort

0

Ich habe noch nie von der Autofill-Funktion gehört. Du musst der Funktion sagen, was zu tun ist, wenn etwas Kontakt aufnimmt. Zum Beispiel:

func didBeginContact(contact: SKPhysicsContact) { 
    let firstBody : SKPhysicsBody = contact.bodyA 
    let secondBody : SKPhysicsBody = contact.bodyB 

    CollisionWithBullet(firstBody.node as! SKSpriteNode, Bullet: secondBody.node as! SKSpriteNode) 
} 

func CollisionWithBullet(Enemy: SKSpriteNode, Bullet: SKSpriteNode) { 

    Enemy.removeFromParent() 
} 

Dies wird den „Feind“ entfernen, wenn er die „Kugel“ trifft. Sie können ein tolles Tutorial von Jared Davidson auf Youtube anschauen. https://www.youtube.com/watch?v=CeW6SCQv--o

+0

Nicht, wenn Feind der zweite Körper ist und Kugel der erste Körper ist, wird es nicht. –