随形态自动切换动作条
进暗影形态及切换到攻击动作条(比如动作条1或2,记得要放在治疗动作条上哦)
/cost 暗影形态
/script CURRENT_ACTIONBAR_PAGE=1;
/script ChangeActionBarPage();
说明:后两条命令的分号别少了
退暗影形态就切换到治疗动作条(比如动作条2或6,记得要放在攻击动作条上哦)
/script local T;
/script for i=0,15,1 do T=GetPlayerBuffTexture(i);if (T and string.find(T,"Shadow")) then CancePlayerBuff(i);break;end end
/script CURRENT_ACTIONBAR_PAGE=2;
/script ChangeActionBarPage();
说明:千万注意分号跟大小写,该有的要有,不该有的别乱加还有首字母大写的要大写,千万注意格式不要乱换行,一个命令就是一行,下面就把命令的意思解释一下,方便你们看明白.
在游戏里面,进入暗影形态和退出暗影形态,本来想不过就是一个命令键,但实际上两次按键是不同的动作,进入暗影形态不用说是"施放 暗影形态",很简单,可退出暗影形态实际上并不是把这个法术再施放一遍,而是要把"暗影形态"的效果消除.在暗影形态下BUFF位有个图标所以这个宏理论上来说是个DEBUFF,查看了参数列表发现了一个参数:CancelPlayerBuff(buffid)的函数,但此函数的参数是"buffid"也就是说以BUFF的序列号为标准来DEBUFF的.暗影形态施放后,去BUFF图标的序列号是不固定的,因为随时可能在施放之前被加过其他的BUFF或HOT什么的,所以就用循环跟判断在做这个宏啦,for的用法很简单,这个for循环是从0循环到15,步长为1,既循环16次,每次都用if命令来判断当前BUFF是否为暗影形态,要判断一个BUFF是不是暗影形态又要用一个BUFF/DEBUFF组的函数,也就是那个GetPlayerBuffTexture,这个函数返回的又不是简单的BUFF名称,而是一长串的字符,所以用了string的find方法来判断返回的字符串里是否有"Shadow"这几个字符有就是暗影形态没有就不是暗影形态,OK解释完毕,自己慢慢研究吧~