实战用法
delete_unit 常用于事件触发战败/投降逻辑时强制清除某国部队,或在内战脚本中移除某一方的特定师模板部队,避免残余单位影响后续剧情走向。例如在某国被玩家事件吞并后,可精准删除其仍在战场上的部队并选择是否返还装备:
# 在某国投降事件的 immediate 块中删除其所有装甲师并返还装备
GER = {
delete_unit = {
division_template = "Panzer Division"
disband = yes
}
}
配合关系
[delete_unit_template_and_units](/wiki/effect/delete_unit_template_and_units):在彻底清除某个师模板的同时也删除该模板本身,两者配合可做到"模板+单位"的完全清理,delete_unit 适合只删单位但保留模板的场景。
[annex_country](/wiki/effect/annex_country):吞并一国前先用 delete_unit 清掉对方残余部队,可防止吞并后出现游荡的无主师团,逻辑更干净。
[has_army_size](/wiki/trigger/has_army_size):在触发 delete_unit 前用此触发器判断目标国是否仍有部队,避免在部队已为零时执行无意义操作或产生脚本警告。
[every_country_division](/wiki/effect/every_country_division):若需要逐师判断再删除,可先用此命令遍历所有师,再在满足条件时调用 delete_unit 精准处理。
常见坑
- 误以为会生成提示文本:
delete_unit 不会在界面上产生任何 tooltip,若需要让玩家看到"部队被解散"的反馈,必须另外配合 custom_effect_tooltip 手动补充说明文字,否则玩家完全看不出有任何事情发生。
disband 默认为 no 容易忽略:不写 disband = yes 时装备和人力会直接凭空消失,在需要返还资源的场景(如和平解散、投降补偿)中漏写此字段会导致数值与设计预期偏差,调试时很难察觉。