切换目标 (Switching Targets)
设计师手记
恭喜你晋升为“游戏设计师”!以前我们只能被动地完成系统给的任务,现在,我们要自己写任务列表了。
Step 1: 创建任务卡
使用 game.addManualGoal("任务描述")。
这就像在屏幕右边贴了一张便利贴,上面是个空心框框 。
Step 2: 拿着红笔打钩
系统不会自动帮你打钩。你需要写代码来判断。
当条件满足(比如击败了3个侦察兵),你必须大喊:
game.setGoalState(目标, True)
这时候,便利贴上才会变成 ✔。
代码控制打钩
别碰他们 (Don't Touch Them)
禁忌规则设计
在这个关卡,我们不仅要定义“怎么赢”,还要定义“怎么输”。 目标很复杂:杀侦察兵(Scout),但是绝对不能碰矮人(Munchkin)。
立即失败条件
如果任何一个 Munchkin 死掉了:
game.setGoalState(dontTouchGoal, False)
设置成 False,意味着任务失败,游戏直接结束(Game Over)。
连锁成功条件
那个“不要碰矮人”的任务,什么时候算成功呢?
只有当其他所有任务都做完了,它才算成功。
我们在 checkGoals 里不断检查:如果任务A完成了 AND 任务B完成了 -> 任务C成功。
规则引擎
FAIL GAME
if OthersDone:
SUCCESS