在SpriteKit中产生敌人的波浪
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在SpriteKit中产生敌人的波浪相关的知识,希望对你有一定的参考价值。
我实际上在做太空射击游戏。我有一个在随机位置随机产生敌人的函数:
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
这会给你:
- 第1波与1敌人
- 波2与3个敌人
- 第3波与6个敌人
Swift有几种方法可以控制游戏的流程。每个都有自己的优点,每个都可以使用......这几乎是个人的选择。你可以在这里阅读它们:
以上是关于在SpriteKit中产生敌人的波浪的主要内容,如果未能解决你的问题,请参考以下文章
如何减少在 Swift spritekit 中创建更多敌人的时间?
在屏幕上的 3 个特定位置生成敌人 Swift SpriteKit IOS