我实际上在做太空射击游戏。我有一个在随机位置随机产生敌人的函数:
let enemyShip = EnemyShip(enemyImage: enemyImageShip, life: enemyShipLife, nodeName: nodeNameEnemy, gameScene: game)
enemyShip.definitionPhysicsBody()
game.addChild(enemyShip)
let spawn = ToolMaths.random(min: gameZone.minX + enemyShip.size.width, max: gameZone.maxX - enemyShip.size.width)
enemyShip.position = CGPoint(x: spawn, y: game.size.height )
let moveEnemyShip = SKAction.moveTo(y: 0, duration: 1.8)
let removeEnemyShip = SKAction.removeFromParent()
let enemyShipSequence = SKAction.sequence([moveEnemyShip, removeEnemyShip])
enemyShip.run(enemyShipSequence)
现在我想创建一个波浪系统,如:
波1:一个敌人产生波2:两个敌人产生波3:三个敌人等
我怎样才能做到这一点 ?谢谢
我想,控制和流动是你正在寻找的东西。
他们会让你预先确定在一个波浪中创造了多少敌人,你有多少波,以及后续波中敌人之间的差异。
可以这样想:
If Wave = 1, Enemies = 1
When Wave Finished, Wave = Wave + 1
If Wave = 2, Enemies = Enemies + Wave
When Wave Finished, Wave = Wave + 1
If Wave = 3, Enemies = Enemies + Wave
这会给你:
Swift有几种方法可以控制游戏的流程。每个都有自己的优点,每个都可以使用......这几乎是个人的选择。你可以在这里阅读它们: