- 好友
- 0
- 在线时间
- 0 小时
- 最后登录
- 2024-9-16
平民

- UID
- 3684151
- 第纳尔
- 0
- 精华
- 0
- 互助
- 1
- 荣誉
- 0
- 贡献
- 0
- 魅力
- 0
- 注册时间
- 2024-8-3
 鲜花( 0)  鸡蛋( 0)
|
发表于 2024-9-13 12:07:31
|
显示全部楼层
本帖最后由 ukatoilol 于 2024-9-13 12:30 编辑
你的代码实现不了移除俘虏的功能.
(party_remove_members,<party_id>,<troop_id>,<number>),
这个函数需要参数包括(party_remove_members, 队伍ID, 俘虏的兵种ID, 移除的数量),
你的代码里就没有获取过"俘虏的兵种ID"这个必要的参数
大概的写了下实现代码思路,不保证运行不报错
- (try_for_parties,":party"), # 循环所有队伍
- (party_get_num_prisoner_stacks, ":num_stacks", ":party"), # 获取队伍中俘虏的总数,包含英雄
- (ge, ":num_stacks", 5), # 队伍的俘虏数量大等于5个
- (assign, ":removed_cnt", 0) # 记录已移除俘虏的数量
- (try_for_range_backwards, ":i_stack", 0, ":num_stacks"), # 循环俘虏
- (lt, ":removed_cnt", 5), # 移除数量不超过5个
- (party_prisoner_stack_get_troop_id, ":troop_no", ":party", ":i_stack"),# 获取俘虏的兵种ID
- (neg|troop_is_hero, ":troop_no"),# 俘虏不是英雄
- (party_remove_prisoners, ":party", ":troop_no", 1),# 移除1个俘虏
- (val_add, ":removed_cnt", 1), # 已移除数量+1
- (try_end),
- (gt, ":removed_cnt", 0), # 是否至少移除了一个俘虏
- (party_add_members,":party","trp_vill_nubing",1),#得到一个奴隶兵
- (try_end),
复制代码
|
|