- 好友
- 0
- 在线时间
- 0 小时
- 最后登录
- 2023-3-6
平民
- UID
- 3323948
- 第纳尔
- 130
- 精华
- 0
- 互助
- 0
- 荣誉
- 0
- 贡献
- 0
- 魅力
- 0
- 注册时间
- 2022-2-7
鲜花( 2) 鸡蛋( 0)
|
本帖最后由 KajiuraYuki 于 2022-2-17 16:56 编辑
如题,风云三国司马奉先里有个功能就是阵营出兵计如元帅{s1}决定攻打{s2},请问这个功能是如何实现的?
----------------------------------------------------------------------------------------------------
自己试了一下大概是解决了
1. 首先是某个国家或元帅准备攻打某个城堡或城镇的消息
在module_scripts.py里的script_decide_faction_ai这个脚本里
#Change of strategy
(try_begin),
(neq, ":new_strategy", ":old_faction_ai_state"),
(try_begin),
(ge, "$cheat_mode", 1),
(str_store_faction_name, s5, ":faction_no"),
(display_message, "str_s5_decides_s14"), #这里是开作弊模式提示的某些信息,
(try_end),
(store_current_hours, ":hours"),
(faction_set_slot, ":faction_no", slot_faction_ai_current_state_started, ":hours"),
在这行的下面添加
(try_begin),
(eq,":new_strategy",sfai_attacking_center), #判断新的策略是否为攻打城镇
(faction_get_slot, ":faction_object", ":faction_no", slot_faction_ai_object), #获取目标城镇
(faction_get_color, ":faction_color", ":faction_no"), #获取阵营的颜色
(str_store_faction_name, s3, ":faction_no"), #存储阵营字符串到变量s3里
(str_store_party_name, s2, ":faction_object"), #存储目标城镇字符串到变量s2里
(str_store_troop_name, s1, ":faction_marshal"), #存储阵营元帅字符串到变量s2里
(display_log_message, "@{s3} de yuanshuai {s1} jue ding gong da {s2}",":faction_color"), #显示信息{s3}的元帅{s1}决定攻打{s2}
(try_end),
2. 某个国家或元帅正在率军前往目标城镇的信息
#Offensive begins
(try_begin),
(eq, ":old_faction_ai_state", sfai_gathering_army),
(is_between, ":new_strategy", sfai_attacking_center, sfai_feast),
(try_begin),
(eq, "$cheat_mode", 1),
(str_store_faction_name, s5, ":faction_no"),
(display_message, "str_s5_begins_offensive"),
(try_end),
在这行的下面添加
(try_begin),
(eq, ":new_strategy", sfai_attacking_center),
(faction_get_slot, ":faction_object", ":faction_no", slot_faction_ai_object),
(faction_get_color, ":faction_color", ":faction_no"),
(str_store_faction_name, s1, ":faction_no"),
(str_store_troop_name, s2, ":faction_marshal"),
(str_store_party_name, s3, ":faction_object"),
(display_log_message, "@{s1} de {s2} zheng zai shuai jun qian wang {s3}",":faction_color"),
(try_end),
3.已经开始攻击某个城堡或城镇的信息
在module_scripts.py里的script_begin_assault_on_center这个脚本里
在第一行(store_script_param, ":center_no", 1),下面添加
(assign,":troop_no",0),
在最后一行(party_set_slot, ":party_no", slot_party_ai_substate, 1),下面添加
(store_faction_of_party, ":party_no_faction", ":party_no"),
(faction_get_slot, ":faction_no_marshall", ":party_no_faction", slot_faction_marshall),
(faction_get_color, ":faction_color", ":party_no_faction"),
(try_begin),
(eq,":troop_no",":faction_no_marshall"),
(str_store_party_name, s2, ":center_no"),
(str_store_troop_name, s1, ":troop_no"),
(display_log_message, "@{s1} yi jing zhan kai dui {s2} de gong ji",":faction_color"),
(try_end),
|
评分
-
查看全部评分
鲜花鸡蛋咸鱼圣代 在2023-11-18 21:58 送朵鲜花 并说:我非常同意你的观点,送朵鲜花鼓励一下
|