SKSpriteNode自动机芯

时间:2016-03-15 00:57:40

标签: swift sprite-kit swift2

我正在制作我的第一场比赛,它将与马里奥相似。 (使用swift)

已经开始制造他们需要左右移动并响应碰撞的一些敌人,我可以为我的玩家节点执行此操作,因为我从SKScene更新函数调用了player.update()函数,

override func update(currentTime: NSTimeInterval)
{
    player.update()
}

我的问题是:

对于enemyX,如何让节点更新,因为SKSpriteNode没有可以覆盖的默认更新功能,而且来自我的游戏场景

我不想写一些像:

override func update(currentTime: NSTimeInterval)
{
    player.update()
    enemyX.update()
    enemyY.update()
    enemy001.update()
    ...
    enemy100.update
}

你明白我的意思,我怎么解决这个问题,SKSpriteNode需要成为一个不同的类吗?

也许是行动?

let moveLeft = SKAction.moveByX( 200, y:0, duration: 5)
self.runAction(moveLeft, completion: {
    print("----> move left Complete")
})

感谢。

1 个答案:

答案 0 :(得分:1)

你继承了SKSpriteNode和该类中的更新方法。然后在场景中的更新方法中,你完全按照你的说法进行操作

player.update()
enemy.update()

除非你的敌人的行为非常简单,否则不建议使用SKAction。