当我有if语句时,精灵不会旋转

时间:2017-06-23 21:25:35

标签: sprite-kit

我在xcode中使用spritekit来制作我的第一个小游戏。我现在是一个完整的初学者,有编程,所以我有点麻烦。

当我向右滑动时,我试图旋转此板(矩形)。我只希望电路板在某个x和y位置旋转。

所以这里有代码可以工作:

func swipedLeft() {

  board.run(rotateActionLeft)
  board.run(goLeft)
  board.run(goUp)

}

所以这基本上做的是旋转我的板-90度并使其向左移动。当我向左滑动时,它可以工作。

如果我在函数中添加if语句:

  func swipedLeft() {

if position.board.y == -600{

board.run(rotateActionLeft)
board.run(goLeft)
board.run(goUp)

}

}

什么都没发生。当我尝试向左滑动时,电路板无法移动到任何地方。当我在xcode中进入游戏场景时,该板的初始位置是y为-600。

我将不胜感激。

1 个答案:

答案 0 :(得分:0)

什么是positon.board.y?这不是正确的CGPoint语法,它告诉我你正在使用子类?

所以,这意味着:

  1. 自从在SKSeditor中创建精灵后,你的精灵已经移动了。 sks编辑器并不总是准确的。您应该在print语句上方添加if语句以查看它是什么:)

  2. 您的自定义position.board thingy无法正常运行。尝试使用实际的SKNode().position.y并查看是否可以修复它。