(点击图片进入关卡)
随着时间的消逝逐渐产生敌人。
简介
game.time 属性等于自游戏开始以来经过的秒数。
使用 game.time 产生敌人随着时间的推移(在这种情况下,每 2 秒),如下所示:
spawnTime = 0
while True:
if game.time > spawnTime:
game.spawnXY("munchkin", 20, 40)
# Next spawnTime set to current game.time + 2
spawnTime = game.time + 2
默认代码
# game.time是游戏过去的时间
game.spawnPlayerXY("guardian", 10, 35)
game.addSurviveGoal()
game.addDefeatGoal(5)
def onSpawn(event):
while True:
unit = event.target
enemy = unit.findNearestEnemy()
if enemy:
unit.attack(enemy)
game.setActionFor("munchkin", "spawn", onSpawn)
# game.time从零开始,并在几秒内向上计数
spawnTime = 0
while True:
# 产生时间是我们想要产生的时间。
if game.time > spawnTime:
pass
# 在60, 35产生一个“munchkin”
# 设置spawnTime等于game.time + 2
# 所以敌人会每2秒产生一次。
概览
在这个关卡中, spawnTime 是我们用来追踪下一个 ` munchkin' 应该产生的时间的变量。 一开始,它被设置为零,这意味着食人魔会在游戏开始时产生。
随着时间的流逝,游戏引擎会自动更新'game.time` 属性。 这是自游戏开始以来的时间量,以秒为单位。
在 while-true 循环中,我们每次检查'game.time 是否大于 spawnTime`。 如果是这样,我们知道是时候产生一个新的食人魔了。
在产生一个新的食人魔之后,我们更新 spawnTime 与当前的 game.time 相等,但是我们希望等待两次产生之间的秒数(在这种情况下,我们使用 2 )。
冒险时刻 解法
# game.time是游戏过去的时间
game.spawnPlayerXY("guardian", 10, 35)
game.addSurviveGoal()
game.addDefeatGoal(5)
def onSpawn(event):
while True:
unit = event.target
enemy = unit.findNearestEnemy()
if enemy:
unit.attack(enemy)
game.setActionFor("munchkin", "spawn", onSpawn)
# game.time从零开始,并在几秒内向上计数
spawnTime = 0
while True:
# 产生时间是我们想要产生的时间。
if game.time > spawnTime:
# 在60, 35产生一个“munchkin”
game.spawnXY("munchkin", 60, 35)
# 设置spawnTime等于game.time + 2
# 所以敌人会每2秒产生一次。
spawnTime = game.time + 2