- 好友
- 0
- 在线时间
- 7 小时
- 最后登录
- 2025-3-26
扈从
 
- UID
- 3084588
- 第纳尔
- 18
- 精华
- 0
- 互助
- 2
- 荣誉
- 0
- 贡献
- 0
- 魅力
- 1
- 注册时间
- 2019-6-29
 鲜花( 6)  鸡蛋( 0)
|
本帖最后由 咸鱼圣代 于 2025-2-17 14:31 编辑
出于方便考虑,我觉得给玩家冠一个身份能在很多地方起到用处,也易于理解。
不过有些地方我还是没搞清楚,想请问一下大家。
玩家唯一可能统治的阵营就是fac_player_supporters_faction对吗?只要这个阵营为激活状态并且确定玩家是其统治者那么玩家就一定是君主,有没有什么别的情况玩家也是君主呢?
玩家向篡位者宣誓会执行(assign, "$player_has_homage" ,1),对吧。但是如果是的话怎么放弃支持篡位者的对话没有把这个全局变量调回0呢?难道玩家在跟随篡位者叛乱期间中途放弃就永远保留"$player_has_homage"为1了吗?
目前我个人是将玩家分为四个身份并试图确定玩家的身份,不过因为上面的问题感到很苦恼,也不知道我的方法有没有疏漏。
slot_troop_player_state = 670
slto_freeman = 0
slto_mercenary = 1
slto_vassal = 2
slto_monarch = 3
(1.000000,
[
(try_for_range, ":faction_no", kingdoms_begin, kingdoms_end),
(try_begin),#如果玩家的阵营为玩家拥立者,且统治者为玩家,玩家就是君主
(eq, "$players_kingdom", "fac_player_supporters_faction"),
(faction_slot_eq, "fac_player_supporters_faction", slot_faction_leader, "trp_player"),
(troop_set_slot, "trp_player", slot_troop_player_state, slto_monarch),
(else_try),#如果玩家的阵营不是玩家拥立者,而是属于任何一个NPC王国的话
(eq, "$players_kingdom",":faction_no"),
(try_begin),#如果执行过(assign, "$player_has_homage" ,1),玩家就是封臣
(eq, "$player_has_homage" ,1),
(troop_set_slot, "trp_player", slot_troop_player_state, slto_vassal),
(else_try),#如果没有执行过,只是单纯的过了一遍(call_script, "script_player_join_faction", "$g_talk_troop_faction"),玩家就是佣兵
(troop_set_slot, "trp_player", slot_troop_player_state, slto_mercenary),
(try_end),
(else_try),#如果上面的一个都没触发,玩家不属于任何一个王国阵营,也不是统治者。玩家是一个自由人
(troop_set_slot, "trp_player", slot_troop_player_state, slto_freeman),
(try_end),
(try_end),
]),
|
|