SpriteNode/形状改变大小和消失后返回GameScene (Swift SpriteKit)



动图中的问题:http://i.imgur.com/hiF5lyw.gifv

正如你所看到的,主玩家是一个SKSpriteNode,当你击中一个掉落的方块(SKShapeNode)时,游戏切换到GameOver场景。当你在GameOver场景中点击重启并移动回GameScene时,掉落的方块会消失,玩家精灵的尺寸也会随着它的y轴位置而改变。

所有的代码都包含非常详细的注释,但如果你有任何问题,请随时提出。

因为我的玩家精灵的大小是基于屏幕的大小,所以它可能与切换场景时屏幕大小的变化有关。另外,奇怪的是,掉落的敌人在几秒钟后才出现,但随后节点数急剧增加,触发了另一个GameOver场景转换。

也许我必须改变一些与GameViewController?

任何帮助将是非常感激的,我已经工作了几个小时,我似乎不明白为什么它搞砸了。

明白了。我创建了两个新变量:

var transition:SKTransition = SKTransition. fadewithduration (0.5)

var gameOver:SKScene = gameOver (size: self.size)

然后在调用场景切换时使用:

self。view ?。presentScene(gameOver, transition: transition)

我认为尺寸:self。大小决定了它。

如果您在进行转换时遇到更改节点大小的问题,则应该使用fileNamed: nameOfYourScene而不是size: self.size

最新更新