- 积分
- 10806
- 威望
- 64
- 魅力
- 63
- 经验
- 7155
- 热心度
- 3
- 注册时间
- 2015-11-15
- 最后登录
- 2024-2-20
- 主题
- 104
- 回帖
- 1839
- 精华
- 8
- 阅读权限
- 120
TA的每日心情 | 开心 2015-12-9 01:09 |
---|
签到天数: 9 天 连续签到: 1 天 [LV.3]火元素使者
版主
- 积分
- 10806
|
本帖最后由 XEricSin 于 2016-2-1 09:08 编辑
之前我在做追加施法脚本的时候,就在想如果施法前怪物死了,怎么才能取消本次施法呢?
我查看了官方脚本中关于鹰眼术阻止对方施法的部分。
脚本利用BG:S0命令把法术变成无实际效果的招船。
这样做可以保留英雄施法动作。
但是可能会有一些施法相关的bug。比如我另一帖子提到的,如果目标有魔法神镜的情况。
昨天玩封神的时候,发现魔导士把闪电变成审判之雷后,我自己的追加施法的脚本被屏蔽了,于是找出了魔导士的脚本查看。(居然藏在28号怪物增强里面,谢谢贤知大人指引)
部分摘录下来:
!?BG0&1000/v6103=0; 每次行动时触发
... 这里得相印的判断本动作为英雄施法
... 这里做自己想要的效果,也可以根据需要放在下两行后面
!!BG:A0; 把当前行动编号改成0(取消动作)
!!BHx2:M1; 本回合施法状态改成,已施法
...
这里BG:A直接取消魔法,方便快捷,而且不会遇到bug。
但是这样英雄就没有施法动作。如果施法前已经有其他施法动作了,或者特殊动画,那本次取消动作就没关系了。
如果想要增加英雄动画,erm里貌似没有直接的命令,得用内存修改的命令。可以参考封神的universal functions 脚本。另外有个副作用,就是施法动作取消之后,其他脚本中通过BG:A检测英雄施法的部分会失效。
|
|