- 好友
- 0
- 在线时间
- 0 小时
- 最后登录
- 2026-8-4
扈从
 
- UID
- 3319238
- 第纳尔
- 688
- 精华
- 0
- 互助
- 2
- 荣誉
- 1
- 贡献
- 10
- 魅力
- 231
- 注册时间
- 2022-1-28
 鲜花( 19)  鸡蛋( 0)
|
本帖最后由 殇垣 于 2026-7-19 14:11 编辑
OSP 守军弓手分组 为防玩家攻城时 把敌国射手 分组为别的组 而使弓手站位失效。
放在战场触发器 mt 里
module_mission_templates.py
##守军弓手分组
common_reset_defen_archers = ( # CCCCC攻城战 防止玩家改变射手分组的作弊行为,重置射手分组
#ti_before_mission_start, 0,0, [],#开始前执行 不能用此
0,0,ti_once, [(neg|all_enemies_defeated), #不是所有敌人都被打败了 战斗未结束
],
[
(try_for_agents, ":defender_archer_agent"),
(agent_is_active, ":defender_archer_agent"),
(agent_is_human, ":defender_archer_agent"), # 排除马匹
(agent_is_alive, ":defender_archer_agent"),
(agent_is_defender, ":defender_archer_agent"), #是守军
(agent_get_team, ":defender_party_team", ":defender_archer_agent"),
(this_or_next | eq, ":defender_party_team", "$defender_team"), # 守军部队
(eq, ":defender_party_team", "$defender_team_2"), # 守军友军增援部队
(agent_get_troop_id, ":troop_id", ":defender_archer_agent"),
(neg | troop_is_hero, ":troop_id"), # 排除英雄
(is_between, ":troop_id", soldiers_begin, soldiers_end), #兵范围
#(troop_is_guarantee_ranged, ":defender_archer_agent"), ## 是远程(这个不能用了,
# 因要避免玩家把守军相同兵种设为非射手)
(assign, ":has_yuan_cheng", 0),
(try_for_range, ":item", 0, 4), # 所带武器类型判断
(agent_get_item_slot, ":getRemote", ":defender_archer_agent", ":item"),
(gt, ":getRemote", 0),
(item_get_type, ":right_item_type_source", ":getRemote"),
(try_begin),(eq, ":right_item_type_source", itp_type_bow), # 弓
(assign, ":has_yuan_cheng", 1),
(else_try),(eq, ":right_item_type_source", itp_type_crossbow), # 弩
(assign, ":has_yuan_cheng", 1),
(else_try),(eq, ":right_item_type_source", itp_type_thrown), # 投
(assign, ":has_yuan_cheng", 1),
(else_try),(eq, ":right_item_type_source", itp_type_musket), ######滑膛枪
(assign, ":has_yuan_cheng", 1),
(else_try),(eq, ":right_item_type_source", itp_type_pistol), #手枪
(assign, ":has_yuan_cheng", 1),
(try_end),
(try_end),
(eq, ":has_yuan_cheng", 1),
(agent_get_ammo, ":ammo", ":defender_archer_agent"), # 获取弹药↓
(gt, ":ammo", 0), # 有弹药者 #you yuan cheng he dan yao
(set_show_messages, 0),
(agent_set_division, ":defender_archer_agent", grc_archers), # 兵种设置分组集合类别
(team_give_order, ":defender_archer_agent", grc_archers, mordr_use_ranged_weapons), ###弓箭手 使用远程CCCCCC
(set_show_messages, 1),
(try_end),
])
common_reset_defen_archers,#弓手分组
加在这两个的后面
castle_attack_walls_belfry
castle_attack_walls_ladder
|
|