日期:2022-12-19 17:44:15
来源:互联网
点击:14
以下为您整理了castspellbyname 替代的答案
求 SM 60级 FB必要的宏 最好能代替或少用动作条有了解的吗?宏1:
/script function BU(s) P,B,i=player,true,1 while UnitBuff(P,i) do if string.find(UnitBuff(P,i),s) then B=false end i=i 1 end return B end
宏2:
/script function DE(s) P,B,i=player,false,1 while UnitDebuff(P,i) do if string.find(UnitDebuff(P,i),s) then B=true end i=i 1 end return B end
宏3:
/script nn=1 function UN() nn=nn 1 if nn3 then nn=1 end uc,ii=UnitClass(target),6 if (uc==盗贼 and nn==1) then ii=5 elseif (uc==猎人 and nn==1) then ii=4 end return ii end
宏4:
/script function HL() P,U=player,UseAction if (UnitHealthMax(P)-UnitHealth(P))1800 then if BU(Nature_RavenForm) then CastSpellByName(自然迅捷) else U(8,0,1) end end if DE(Hunter_AimedShot) then U(9,0,1) end end
宏5:
/script U=UseAction HL() if UnitCanAttack(player,target) then if not PlayerFrame.inCombat then AttackTarget() end if (GetActionCooldown(6)==0 and IsActionInRange(6)==1) then jj=UN() U(jj) elseif BU(LightningShield) then U(7) end else Jump() end
各个宏的作用:
宏1: 建立函数BU(s), 判断自己是否有某个BUFF
宏2: 建立函数DE(s), 判断选定的对象是否有某个DEBUFF
宏3:建立函数UN(), 判断选定的对象是否是盗贼,或猎人,或其他职业,返回某个值
宏4:建立函数HL(), 自己的血的最大值减去目前的血的值,看结果是否大于1800 ? 大于的话,将自动释放(迅捷自然之速 治疗波), 来一个第二次生命, 并判断你自己是否中了猎人的抽蓝技能,否则自动解毒
宏5: 本宏将调用以上4个宏的函数, 这个宏将做以下事情:
1. 调用宏4,看自己是否掉血1800 以上,否则自动释放(迅捷自然之速 治疗波),是否中了猎人的抽蓝钉刺,否则解毒
2. 看当前选定的目标 是否能被攻击? 如果不能被攻击, 自己将执行跳跃动作后,宏结束....如果目标能被攻击,则继续以下
3. 判断你是否在进行普通攻击, 没有普通攻击,则自动开普通攻击模式
4. 判断目标是否在你的震击魔法(地震,冰震,火震)的范围内(20码),且震击魔法是否技能冷却,则掉用宏3,根据敌人不同的职业选择适当的震击魔法,进行攻击
5. 判断你自己是否有闪电盾,没有时补上
建立宏:
1.将宏1-4定义到(不经常用的位置), 在您选择人物刚进入游戏后,将宏1到宏4每个宏的动作执行一次, (这4个宏只建立函数用,所以只在进人物后运行一次)
2.将宏5 定义到常用位置,并将空格键绑定这个宏,即每次按空格键,系统自动执行宏5一次
定义你的技能位置(这一步是必须的, 技能位置不能摆错!!!)
位置8:治疗波(大补的那个)
位置9: 解毒术
位置7:闪电盾
位置4: 冰震
位置5: 火震
位置6: 地震
法师的寒冰屏障(就是冰箱)怎么样自己解除,不要等十秒?急需求解!。。。右上你的BUFF中有个冰箱的图标,右键点一下
或者试试这个宏
/script SpellStopCasting(); CancelBuff(Ice Block); if (GetSpellCooldown(179,0) = 2) then CastSpell(147,0); else CastSpellByName(Ice Block); end;
功能:中断正在施放的法术并使用冰箱;如果在冰箱中就解冰箱;如果冰箱冷却大于2秒就使用急速冷却;
注:其中179是冰箱编号,147是急冷编号
求神牧各种治疗宏有了解的吗?/ R=1;for i=1,16 do if UnitBuff(target, i) then if string.find(UnitBuff(target, i), Renew) then R=0;DEFAULT_CHAT_FRAME:AddMessage(目标恢复中);end;end;end;if R0 then CastSpellByName(恢复(等级 9));end
二:
治疗当前MT的宏(对于boss的目标是动态的mt专用)。尤其是对bwl3号,AQL公主,对刷mt的治疗有用。
/目标 BOSS名称
/协助
/施放 愈合(等级9)[不同治疗者根据自己加血技能进行更改]
加血技能建议使用SHIFT点自己技能列表中的图表添加
如果不知道宏设置有无问题可以通过设定目标为XX人,然后你让XX人看着你,然后按此宏,你能给自己加上血,就说明你设置的宏OK了!
三:
/施放 快速治疗(等级 7)
/SCRIPT if UnitIsFriend(Player,target) then if UnitAffectingCombat(target) then if ((UnitHealthMax(target)) - (UnitHealth(target)) 1800) then SpellStopCasting();end;end;elseif SpellIsTargeting() then TargetUnit(Player);end
只有战斗中使用,在非战斗中,没有打断效果
对于这个宏我自己的一点看法,就是他判断的很早,需要灵活使用。
四:对于自身的治疗宏
频繁的切换目标,耽误了治疗时间,有时也会出错,用了这个宏省力多了。
/Target 目标名字
/施放 快速治疗(等级 7)
/ TargetLastEnemy()
同样的宏还可以用在盾,恢复,驱散上,只要把人物名字和技能名字等级改下就可以了。
MS常用治疗宏命令第一个
/script local i,j,b,f,p;for i=1,40 do f=nil;p=raid..i;if UnitIsVisible(p) then for j=1,16 do b=UnitBuff(p,j);if b and strfind(b,Forti) then f=1;break;end;end;if not f then TargetUnit(p);CastSpellByName(真言术:韧);break;end;end;end;
自动寻找团队中没有韧的人,然后自动给他上个韧
不用一个一个的点人了
可以换成精神
第二个
/target player
/施放 能量灌注
/script TargetLastEnemy()
/script SpellStopCasting()
/施放 心灵专注
/script SpellStopCasting()
/script UseInventoryItem(13)
先对自己灌注,再切回上一个目标 然后心灵专注 护符 1宏3开
相关
/target 填入自己的id
/施放 真言术:盾(等级 1)
/script TargetLastEnemy();
给自己上个盾在切回上一个目标
第三个宏
/script SendChatMessage(哦,宝贝乖乖,哥哥要水水,Whisper,GetDefaultLanguage(target),UnitName(target))
对目标说悄悄话要水
第四个
/script if GetActionCooldown(数字)==0 then SpellStopCasting(); CastSpellByName(); elseif (UnitHealthMax(player)-UnitHealth(player)=1200) then SendChatMessage(救救我-HELP,ME,yell) end
渐隐的时候叫人来救自己
第五个
/script k=1; for i=2,40,1 do if UnitName(raid..i)~=nil then if UnitHealth(raid..i)UnitHealth(raid..k) then k=i end; end; end; TargetUnit(raid..k); CastSpellByName(快速治疗)
快速治疗团队中血最少的队友
第六个
/s c r i p t local start, duration, enable = GetActionCooldown(1); if ( start 0 and duration 0 and enable 0) then CastSpellByName(心灵专注); else r=4;l={3000,4000,5000,6000};t=UnitHealth(target);if (t==0) then t=UnitHealth(player);end;if UnitIsFriend(player,target) then for j=r,1,-1 do if (t=l[j]) then CastSpellByName(强效治疗术(等级 ..j..));break;end;end;end
目标血量=6000=5000=4000=3000的4种情况下分别使用使用 强效治疗术(等级1-2-3-4)
给赵云学技能,那个会被替代急需求解!。。。看幸運而已
有可能會打掉任何一個技能
也可能不會打掉任何技能
希望不會打掉任何一個技能
(*^__^*) 嘻嘻……
愿樓主玩得快樂
CastSpellByName是什么 意思啊在线求助!你是不是 魔兽里的盗贼角色?想做宏是吗?
CastSpellByName(剔骨(等级 4))
下面是个简单的宏:
/script if ( GetComboPoints() = 4 ) then CastSpellByName(剔骨(等级 4)); else if (UnitMana(player) = 40 ) then CastSpellByName(邪恶攻击(等级 4)); end end
解释:当连击点数小于4且能量点数大于40时使用邪恶攻击,连击点数达到4时使用剔骨,你可以把代码中的4改为你想要的数字,符合各人不同的要求,本宏最适合练级.
资料castspellbyname 替代来源于网友整理,仅供参考。提示:想了解更多castspellbyname 替代(castspellbynam)相关的内容,请尝试通过上方搜索框搜索。