如何产生一种以上的敌人?它们被标记的方式是小,中,大。
func spawnAlien(numAliens: Int) -> Alien?{ // Decides whether an alien should be spawned
guard numAliens < maxAliens else { return nil }
spawnCount += 1
if(spawnCount == spawnFreq){
spawnCount = 0
if(arc4random_uniform(spawnProb) == 0){
return Alien(health: 1, power: 1, shotFreq: 60, shotProbHigh: 10, shotProbLow: 2, type: .small)
}
}
return nil
}
答案 0 :(得分:0)
你的这个功能在这里
return Alien(health: 1, power: 1, shotFreq: 60, shotProbHigh: 10, shotProbLow: 2, type: .small)
只接受.small
。
您可以将其更改为.medium
或.large
。
如果您想随机生成不同类型,可以使用另一个arc4random_uniform
来确定它的随机类型。
var typeToBeRandomized = .small
let randomValue = arc4random_uniform(3)
if randomValue == 1 {
typeToBeRandomized = .medium
} else if randomValue == 2 {
typeToBeRandomized = .large
}
现在将此typeToBeRandomized
传递给上面的Alien构造函数,而不是硬编码的.small