Swift SpriteKit GameplayKit 检查 GKStateMachine 不等于状态

cra*_*777 4 swift

我刚刚使用苹果在 iOS9 中引入的实体和组件基础架构 (GameplayKit) 完成了游戏的转换。

我不知道如何检查当前状态(GKStateMachine)不等于状态。假设我想检查 currentState 是否等于我的 GameOverState,我会这样说

 if self.stateMachine.currentState is GameOverState {...
Run Code Online (Sandbox Code Playgroud)

我如何检查当前状态是否不等于 GameOverState,“... is ...”sytanx 对我来说是新的,所以我不知道如何调用它。

Rel*_*ual 7

我自己也遇到了这个问题。似乎没有 的逆is,所以我能看到的唯一选择是包装条件语句以反转布尔值。所以你会喜欢以下...

if !(self.stateMachine.currentState is GameOverState) {...
Run Code Online (Sandbox Code Playgroud)

我发现很难找到文档......所以对于您和其他人来说参考: 有关运算符的文档is(标题为“类型转换运算符”的部分)