【发布时间】:2016-03-25 00:48:51
【问题描述】:
在我的 spritekit 游戏中,我生成了两个敌人之一。生成的敌人由随机生成的布尔值决定,使用arc4random_uniform(2)。
我正在尝试创建一种控制分发的方法。基本上,我不希望它连续生成 3 个1's (true's)...
我认为最好的方法是检查每次生成的东西,并增加计数,如果超过计数,将生成的 bool 更改为相反的值。
我想我有点困惑,因为我无法让它工作。
有没有一种简单的方法可以做到这一点,或者可以修改我的代码以使其正常工作?谢谢。
var randomSequenceNumber = Int(arc4random_uniform(2)) == 0 ? true: false
if randomSequenceNumber {
seqCount = randomSequenceNumber
obNum++
print("Obstacle Count: ", obNum)
}
if obNum <= 3 {
randomSequenceNumber = !seqCount
obNum = 0
}
(可能有一个大脑袋放屁)
【问题讨论】:
-
总是在两个“真”之后选择“假”让敌人可预测:)
-
没错,但有时我会连续获得 6 或 7 个。也许将其更改为 5。仍然是随机的会很好,但如果下一个与前一个 4 相同,则将其更改并重置计数,因此最坏的情况是,您会得到 4 false | 4 真 | 4 false etc...但它仍然可能是 T F T F F T T T F T FF TT F
标签: ios swift boolean arc4random