Jedes Mal, wenn ich mein Projekt laufen lasse, erhalte ich eine schlechte Anweisung Fehler auf der Linie ...SpriteKit Auswickeln Optional Error (Swift)
ground.physicsBody!.dynamic = false
Hier wird der vollständige Code ist ich mit diesem Code-Schnipsel gehen leite. Ich bin mir nicht sicher, was passiert und ich habe nicht viel Erfahrung mit Optionen.
Code:
var ground = SKSpriteNode()
ground.position = CGPointMake(0, 0)
ground.physicsBody = SKPhysicsBody(rectangleOfSize: CGSizeMake(self.frame.size.width, 30))
let groundTexture = SKTexture(imageNamed: "Red.png")
ground = SKSpriteNode(texture: groundTexture)
ground.physicsBody!.dynamic = false
ground.physicsBody?.allowsRotation = false
ground.physicsBody!.categoryBitMask = ColliderType.Object.rawValue
ground.physicsBody!.contactTestBitMask = ColliderType.Object.rawValue
ground.physicsBody!.collisionBitMask = ColliderType.Object.rawValue
self.addChild(ground)
implementiert werden Ihre Antwort ist korrekt, aber ich würde vorschlagen, dass Sie ein paar leichte Verbesserungen für zukünftige Leser machen. Um Stürze an erster Stelle zu vermeiden, sollten Sie alle ersetzen! mit? wenn möglich. Nicht die beste Übung um Unwrap zu erzwingen, obwohl du weißt, dass der Physikkörper da ist. – crashoverride777
Oder noch besser, einfach den Physikkörper separat erstellen und dann nach der Konfiguration dem Knoten zuweisen. – Hamish