铁锈战争模组工坊
全部教程创作工具English

给单位一个会记事的按钮

声明变量、出生初始化,并让按钮切换单位状态

先说清需要记住什么

变弹战车需要记录累计射击次数和是否开启加强弹,分别使用 number 与 boolean,内存属于当前单位,两辆车各自维护自己的值

[core]
defineUnitMemory: number shots, boolean powered

出生时给出初始值

created 事件适合完成一次初始化,shots 从 0 开始,powered 从 false 开始,后续动作读取到的状态就有明确含义

[hiddenAction_initialize]
autoTriggerOnEvent: created
setUnitMemory: shots=0, powered=false

按钮只做一次简单变更

玩家按钮用 setUnitMemory 把 powered 反转,buildSpeed:0 适合这个无需排队等待的切换示例,复杂技能以后再逐步添加费用、时间或限制

[action_toggle]
text: 切换弹种 / Switch ammo
description: 射击次数 / Shots: %{memory.shots}
buildSpeed: 0
setUnitMemory: powered=not memory.powered

区分赋值与显示

setUnitMemory 使用变量名加等号,读取当前值时写 memory.powered,按钮说明中的 %{memory.shots} 在显示时求值,普通字符串里的变量名不会自动变化

动手练习

新增 boolean marked,给它一个单独按钮和状态说明

打开互动教程,下载配套模组