2017-07-26 31 views
1

我一直試圖在YouTube上遵循Pong指南(我是SpriteKit的新手),當我在Xcode 8.3.3中運行我的代碼時,球沒有移動。該指南使用Xcode 8,所以必須改變。這是我的GameScene.swift代碼:.applyimpulse無法在Xcode 8.3.3中使用SKSpriteNode()

import SpriteKit 
import GameplayKit 

class GameScene: SKScene { 

var Ball = SKSpriteNode() 
var comPaddle = SKSpriteNode() 
var mainPaddle = SKSpriteNode() 

override func didMove(to view: SKView) { 

    Ball = self.childNode(withName: "Ball") as! SKSpriteNode 
    mainPaddle = self.childNode(withName: "mainPaddle") as! SKSpriteNode 
    comPaddle = self.childNode(withName: "comPaddle") as! SKSpriteNode 

    Ball.physicsBody?.isDynamic = true; 
    Ball.physicsBody?.applyImpulse(CGVector(dx: 20, dy: 20)) 


    let border = SKPhysicsBody(edgeLoopFrom: self.frame) 

    border.friction = 0 
    border.restitution = 1 

    self.physicsBody = border 
} 


override func update(_ currentTime: TimeInterval) { 
    // Called before each frame is rendered 
} 
} 
+2

你在哪裏創建Ball.physicsBody? –

回答

1

正如Simone Pistecchia指出的那樣,我並沒有創建一個物理機構。我用下面的命令做了這個:

Ball.physicsBody = SKPhysicsBody(circleOfRadius: Ball.size.width)