- 好友
- 20
- 在线时间
- 315 小时
- 最后登录
- 2024-9-8
子爵[版主]
- UID
- 81513
- 第纳尔
- 5223
- 精华
- 1
- 互助
- 18
- 荣誉
- 5
- 贡献
- 100
- 魅力
- 124
- 注册时间
- 2008-6-26
鲜花( 120) 鸡蛋( 0)
|
发表于 2020-3-23 15:50:07
|
显示全部楼层
本帖最后由 stevenxxy007 于 2020-3-23 15:59 编辑
(
1, 0, ti_once, [],
[
(try_for_agents, ":agent"),
(agent_is_alive, ":agent"),
(agent_is_human, ":agent"),
(agent_is_non_player, ":agent"),#玩家无效
(agent_get_troop_id, ":hero", ":agent"),
(troop_is_hero, ":hero"), # 英雄有效
(store_agent_hit_points,":hp",":agent",1),
(store_mul,":3hp",":hp",3),
(agent_set_hit_points,":agent",":3hp",1),
(try_end),
])
你ti_on_agent_spawn是检测每次agent的诞生,就触发一次你的逻辑。如果你有95个agent全场,那就执行了95次。
其次,在ti_on_agent_spawn的时候,有可能所有的agent还没有设定他们各自的hit points。你在触发器中加了三倍血,但是在触发器调用完后,又被系统重置回去了。
所以思路是等ti_on_agent_spawn结束后,你再进行血量的增加。当然也可能是store_agent_hit_points无法加血超过上限~
补充一句,看一看header_trigger.py里面对于ti_on_agent_spawn的描述,有没有返回值设定啊,有可能这个返回值就是他们的血量,修改返回值可能也可以达到效果。 |
评分
-
查看全部评分
鲜花鸡蛋黑脸小白 在2020-3-23 16:05 送朵鲜花 并说:我非常同意你的观点,送朵鲜花鼓励一下
|