07 · 茶点时间
先读关卡目标,观察地图,再运用本课知识。
扣哒世界 · 游戏开发2 · C++ · 第7关
先读关卡目标,观察地图,再运用本课知识。
学习路线:读目标 → 看图解 → 写代码 → 运行检查
这个关卡有4个计时器,它们分工不同:
我们需要告诉 UI 系统去“监视”哪个变量。
nextPotionIn,屏幕上的数字就会自动变!
玩家想知道“还剩几秒?”,而不是“第几秒生成?”
例子:
药水将在 15秒 时生成。
现在是 10秒。
剩余时间 = 15 - 10 = 5秒。
我们需要在一个函数里处理所有的计时逻辑,并在主循环里不断调用它。
每帧都在运转
当时间到了,我们要:1. 生成单位,2. 设定下一次生成时间。
spawnMunchkins(), spawnPotion()...updateTimers()
nextPotionIn (UI)ui.track 绑定 UIwhile(true) 循环调用 updateTimers()扣哒世界 · 游戏开发2 · C++ · 第7关
这个关卡有4个计时器,它们分工不同:
我们需要告诉 UI 系统去“监视”哪个变量。
game.nextPotionIn = 0;
玩家想知道“还剩几秒?”,而不是“第几秒生成?”
game.nextPotionIn = game.potionSpawnTime - game.time;
我们需要在一个函数里处理所有的计时逻辑,并在主循环里不断调用它。
game.nextPotionIn = game.potionSpawnTime - game.time;
当时间到了,我们要:1. 生成单位,2. 设定下一次生成时间。
game.munchkinSpawnTime = game.munchkinSpawnTime + 6;
定义生成函数: spawnMunchkins(), spawnPotion()...
本节课关卡:7. 茶点时间