06 · 冒险时刻
先读关卡目标,观察地图,再运用本课知识。
扣哒世界 · 游戏开发2 · C++ · 第6关
先读关卡目标,观察地图,再运用本课知识。
学习路线:读目标 → 看图解 → 写代码 → 运行检查
把 game 想象成游戏管理员老爷爷。
他手里拿着一个秒表,这个秒表上的时间就是 game.time。
管理员还会布置任务:
spawnPlayerXY: 在坐标 (10, 35) 生成玩家。
Survive: 生存目标。
Defeat: 击败目标 (参数 5 表示数量)。
让所有敌人一出生就自带战斗逻辑:
"所有 munchkin 出生时,自动执行 onSpawn 战斗规程。"
我们需要一个变量来记录“下一次闹钟响的时间”。
game.time (兔子) 跑过
spawnTime (旗子) 时
触发事件!
if (game.time > spawnTime)
这是一个数学不等式。想象一条时间轴:
这句话的意思是:
结果:每隔 2 秒生成一次!
看看代码是如何工作的:
以后想做“每隔 X 秒做某事”,就套用这个模板:
扣哒世界 · 游戏开发2 · C++ · 第6关
把 game 想象成游戏管理员老爷爷。
先创建玩家,再指定到达位置、收集数量或击败目标,形成通关规则。
game.spawnPlayerXY("guardian", 10, 35);让所有敌人一出生就自带战斗逻辑:
game.setActionFor("munchkin", "spawn", onSpawn);我们需要一个变量来记录“下一次闹钟响的时间”。
game.spawnXY("munchkin", 60, 35);这是一个数学不等式。想象一条时间轴:
结果:每隔 2 秒生成一次!
spawnTime = game.time + 2;
看看代码是如何工作的:
以后想做“每隔 X 秒做某事”,就套用这个模板:
nextTime = game.time + 5;
本节课关卡:6. 冒险时刻