SpriteKit - 类继承

时间:2015-02-24 06:13:09

标签: class inheritance sprite-kit

我有这门课Enemy.swift:

class Enemy: SKNode {

    var health = Int()
    var enemyPosition = CGPoint()
    var enemy = SKSpriteNode()
    var enemyName = String()

    func moveEnemy() {

              //Some Code
    }
}

我在GameScene.swift中使用它:

func createEnemy() {

        var monster = Enemy()
        var node = SKSpriteNode(imageNamed: "Enemy-Sprite1")
        monster.guy = node
        monster.health = 4
        monster.enemyPosition = CGPointMake(10 ,  400)
        monster.guyName = "enemy1"
        monster.moveEnemy()
        self.addChild(monster)  
    }

但它不起作用,它根本不会出现在屏幕上,是的,我确实在“didMoveToView”中调用它。我究竟做错了什么 ?

1 个答案:

答案 0 :(得分:2)

您可以继承SKSpriteNode而不是SKNode

class Enemy : SKSpriteNode
{
    var health : Int = 0
    var enemyName : String = ""

    func moveEnemy() {

    }
}

并像这样使用

var monster = Enemy(imageNamed: "Enemy-Sprite1")
monster.position = CGPointMake(10 ,  400)
monster.enemyName = "enemy1"
monster.health = 4
self.addChild(monster)