2016-05-16 84 views
0

添加精靈GameScene我想我的新文件「Constructor.swift」構造類中的一個新的精靈添加到我的GameScene。我試圖讓我的GameViewController內的吸氣劑,所以我可以得到我的GameScene的當前實例,然後加入精靈,但這個不起作用。從另一個類

結論;

我怎樣才能在另一個類我GameScene的當前實例,所以我的代碼是因爲所有的精靈在構造類得到構造簡單的維護。我想防止在我的「GameScene.sks」文件中獲得大量的代碼行。

回答

0

您可以命名爲例如泛型類的子類:

class MyDefaultScene: SKScene { 
    var sprite1: SKSpriteNode! 
    var followTrack: SKAction! 
    var followTrackForever: SKAction! 
    var clockWise : Bool = false 

    func setDefaultPhisics() { 
     self.physicsBody!.mass = 0 
     self.physicsBody!.friction = 0 
     self.physicsBody!.affectedByGravity = false 
     self.physicsBody?.linearDamping = 0 
     self.physicsBody?.angularDamping = 0 
     self.physicsBody?.restitution = 1 
     self.physicsBody?.dynamic = false 
    } 
    ... 
} 

class GameScene1: MyDefaulScene { 
    override func didMoveToView(view: SKView) { 
     print("∙ \(NSStringFromClass(self.dynamicType))") 
     print("clockwise: \(self.clockWise)") 
    } 
} 

class GameScene2: MyDefaulScene { 
    override func didMoveToView(view: SKView) { 
     print("∙ \(NSStringFromClass(self.dynamicType))") 
     print("clockwise: \(self.clockWise)") 
    } 
} 
+0

這是編寫可維護的代碼的唯一途徑?我必須這樣做,它看起來很乾淨。 – Aphalleon

+0

有很多方法:你可以創建一個沒有階級識別一個迅速模塊共享的所有功能或屬性的所有項目,或嘗試創建「模型」的物體,像MyShip.swift(類:SKShapeNode)MyBullet(類:SKShapeNode) ...取決於你需要做什麼.. –