我自己做的一个如题的宏,请大家测试使用,谢谢。
/script i=1;t=0;
while UnitBuff("player",i) do
if string.find(UnitBuff("player",i),"SliceDice") then
t=1;
break;
end;
i=i+1;
end;
if((GetComboPoints()>1 and t=0)) then
CastSpellByName("切割")
elseif ((GetComboPoints()>2 and t=1)) then
CastSpellByName("剔骨")
else
CastSpellByName("邪恶攻击")
end;
*****************以下是解释:*********************
/script i=1;t=0;
while UnitBuff("player",i) do--------------------------------〉循环判断自己身上的BUFF
if string.find(UnitBuff("player",i),"SliceDice") then---------〉自身的BUFF的字符串中是否有切割
t=1;------------------------------------------------〉有的话t设为1
break;----------------------------------------------〉跳出循环
end;
i=i+1;
end;
if((GetComboPoints()>1 and t=0)) then--------------------〉如果星大于1颗并且没有切割
CastSpellByName("切割")-------------------------------〉则释放切割
elseif ((GetComboPoints()>2 and t=1)) then---------------〉如果星大于2颗并且有切割
CastSpellByName("剔骨")-------------------------------〉则释放剔骨
else
CastSpellByName("邪恶攻击")---------------------------〉其它情况则邪恶攻击
end;