战斗钩子

战斗钩子

钩子(hook)是在 AI 代码中定义的函数,战斗生成器会在特定时刻调用它们。

钩子完全是可选的。

beforeFight

在战斗开始、第一回合之前调用。你可以在这个函数里用 setLoadout 根据战斗类型更换韭葱的装备配置,比如针对某个 Boss 或某个竞技场做调整。

这个函数可以获取韭葱自己的属性、地图,以及其他实体的部分信息,但获取不到它们的属性:敌人也可以在自己的 beforeFight 里更换装备!

这个函数在全局变量初始化之前执行,全局变量的值会在第 1 回合被覆盖。不过,你可以把数据持久地写入静态属性中。

beforeFight 没有单独的预算:它消耗的是第 1 回合的操作数,第 1 回合只剩下它没有用掉的部分。

只有当装备配置相比该韭葱上一场战斗需要降低某项属性的属性点时,才会消耗一瓶洗点药水:使用同一套装备配置连续战斗只消耗一瓶。如果只想更换武器、芯片和组件,而不改动属性点分配、也不消耗药水,请把 setLoadout 的第二个参数设为 false。

示例:

afterFight

在战斗结束、最后一个回合之后调用。你可以在这个函数里用 getWinner 得知谁赢了,并把结果记录到寄存器中。