如何在sprite工具包中对整个catagorybitmask应用一个冲动

时间:2014-12-03 20:03:22

标签: ios objective-c sprite-kit

我的游戏不断产生大量沿着屏幕移动的鸟类。它们受到重力的影响所以每半秒钟我就想对鸟类施加冲动以产生拍打效果。问题是我只能对产生的最后一只鸟施加冲动。如何对整个类别位掩码应用脉冲?

1 个答案:

答案 0 :(得分:1)

正如@Andy指出的那样,你应该将鸟类存放在一个阵列中。

方法A. 创建一系列将永远重复的操作。序列应该只是:

  1. 等待.5秒(SKAction
  2. 遍历数组并对每个项目(SKAction需要runBlock:)施加冲动
  3. runBlock:是" custom" SKAction,允许您与序列同步触发代码。

    方法B. 创建NSTimeInterval* timeSinceLastImpulse

    Update:(NSTimeInterval*)timeSinceLast
    {
        timeSinceLastImpulse+=timeSinceLast;
        if(timeSinceLastImpulse >= .5)//check if it has been half a second
        {
            //run through array and apply impulse
            timeSinceLastImpulse = 0;
        }
    }
    

    希望这些选项能够为您提供正确的方向!