求做宏高手指点

求小D的宏~~例如一键换装备~~喝水影遁等等~~(要是还有别的更好)
2024-12-23 01:59:05
推荐回答(3个)
回答1:

1、自动上迅捷治愈:如果目标身上有回春或者愈合,就上迅捷治愈,如果没有就上回春。 /Script x=1;found=0;while(UnitBuff("target",x)) do if(string.find(UnitBuff("target",x),"Rejuvenation"))then found=1;end;x=x+1;end; /Script if(found==1)then CastSpellByName("迅捷治愈");else CastSpellByName("回春术(等级 11))")end 2、自动打小爪子:自动寻找团队里没有爪子的人给打上爪子,需要手工点,但不需要点目标看了。最好配合BUFF插件使用。 /script local i,p;for i=1,40 do p="raid"..i;if CheckInteractDistance(p,4) and not UnitBuff(p,1,1) then TargetUnit(p);CastSpellByName("野性印记");TargetLastTarget();break;end;end 3、迅?治疗之触,没有公用CD的连发技能,唯一缺点就是使用的时候要站桩,不能跳不能跑。不然就只使用迅捷不发触,触还要再点一次。 /script SpellStopCasting(); /cast 自然迅捷 /script SpellStopCasting(); /cast 治疗之触 [table][tr][td][table][tr][td]小D必备的7个宏 其他职业也可效仿 好玩又好用(菜鸟都会的详细讲解) [/td][/tr][/table][/td][/tr][tr][td][table][tr][td][img] http://image2.sina.com.cn/blog/tmpl/v3/theme/images/moon.gif[/img][size=2][color=#cc6633]2007-02-01 22:17:47[/color][/size][/td][/tr][/table][table][tr][td][size=2][color=#cc6633][/color][/size][/td][/tr][/table][table][tr][td][color=#606060]大[/color][color=#606060]中[/color][color=#606060]小[/color][/td][/tr][/table][table][tr][td][align=left][size=12px][size=4]首先打/宏(反正把宏大开就行)[/size][/size] [size=12px][size=4]之后点新建,随便起个名字选个图标[/size][/size] [size=12px][size=4]在之后嘛就可以切换出来[/size][/size] [size=12px][size=4]复制以下命令粘贴到宏下面的面板即可[/size][/size] [size=12px][size=4]这里要注意的一点是:你需要结合自己DIY一下,给个提示,其中中文部分(尤其是技能)大多数是可以换的哦 [相信会玩wow的你一定很聪明,笨蛋玩不了这个滴,动动脑子吧!][/size][/size] [size=12px][size=6]第一个[/size] /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,Regen) then f=1;break;end;end;if not f then TargetUnit(p);CastSpellByName(野性印记);break;end;end;end; [/size] [size=12px][size=3]自动给团队里面没有野性印记的人补一个野性印记,不用在一个一个的找人了,也可以换成野性赐福。 [/size] [size=6]第二个 [/size]/Script x=1;found=0;while(UnitBuff(target,x)) do if(string.find(UnitBuff(target,x),Rejuvenation))then found=1;end;x=x+1;end; /Script if(found==1)then CastSpellByName(迅捷治愈);else CastSpellByName(回春术(等级 11)))end [/size] [size=12px][size=3]给目标加个回春,如果目标身上已经有回春了就使用迅捷治愈,可以有效的节约我们的空格位置。 [/size] [size=6]第三个--我最喜欢的 [/size]/script SpellStopCasting() /施放 自然迅捷 /script SpellStopCasting() /施放 治疗之触(等级 11) /script SendChatMessage(超大治疗→仇恨,whisper,this.language,UnitName(target)) [size=3]自然迅捷和治疗之触一起放出来,并且对目标说悄悄话请他注意拉住仇恨,每次点这个技能的时候都象发射炮弹一样,被我加过的目标都说很爽特别是我们的MT 。 [/size] [size=3][size=6]第四个[/size] [/size]/script if (UnitName(Target) ~=nil and UnitIsFriend(player,Target)) then CastSpellByName(复生);SendChatMessage(帅哥,快起来吧,前面还有很多好装备在等着我们呢.... ,Whisper,兽人语,UnitNameTarget); end /Y 复活吧 ★%t★ 额就是你D神 [size=3]复活你的目标.并且告诉身边的人,对目标说悄悄话他可以起来了。 [/size] [size=6]第五个 [/size]/script x=1;found=0;while(UnitBuff(player,x)) do if(string.find(UnitBuff(player,x),StoneClaw))then found=1;end;x=x+1;end; /script if(found==1)then CastSpellByName(宁静(等级 3));else CastSpellByName(树皮术)end [size=3]点2次-第一次有树皮就放树皮,在点一次就放宁静 [/size]/script x=1;found=0;while(UnitBuff(player,x)) do if(string.find(UnitBuff(player,x),StoneClaw))then found=1;end;x=x+1;end; /script if(found==1)then CastSpellByName(飓风);else CastSpellByName(树皮术)end [size=3]跟上一个一样只不过宁静换成了飓风[/size] [size=6]第六个 [/size]/施放 激活 /script SendChatMessage(激活-激活-注意囬蓝,whisper,this.language,UnitName(target)) [size=3]激活目标并告诉他注意回蓝 [/size]/script SendChatMessage(亲爱的-哥哥要水水-,whisper,this.language,UnitName(target)) [size=3]跟目标要水的宏不用次次都打字了[/size] [size=6]第七个 [/size]/Target 图腾 /cast 月火术(等级 3) /Script TargetLastEnemy() [size=3]月火打图腾.[/size][/size]

回答2:

1、HL1:找出团队中健康值最低的,返回组员名称和健康值,g是队团前缀(组party,团raid),n团队人数不包括自己:

  /scriptfunctionHL1(g,n)t,p,UHM,UH=0,"player",UnitHealthMax,UnitHealthm=UH(p)/UHM(p)fori=1,ndoifIR(g..i)==1thent=UH(g..i)/UHM(g..i)ift1thenp="raid"i=i-1elsei=GetNumPartyMembers()ifi>0thenp="party"endendifi>0thenreturnHL1(p,i)elsereturnp,UnitHealthMax(p)-UnitHealth(p)endend

  3、减益:检查减益魔法是否施加在目标身上,p为目标名称,s魔法名,前面几个字符就行,好像中文名称不行:

  /scriptfunctionBU(s,p)ifp==nilthenp="target"endfori=1,16dof=UnitDebuff(p,i)iffthenifstring.find(f,s)thenreturntrueendelsereturnfalseendendreturnfalseend

  4、初始:初始化全局函数

  /scriptfori=49,60doUseAction(i)end

  5、在场:是否可以施法,判断是否存在施法区域,p为目标名称,

  /scriptfunctionIR(p)if(UnitIsDead(p))thenreturn0endifUnitIsVisible(p)==1thenreturn1endreturn0end

  6、增益:检查增益魔法是否施加在目标身上,p为目标名称,s魔法名,前面几个字符就行,好像中文名称不行:

  /scriptfunctionB(s,p)ifp==nilthenp="player"endfori=1,16dof=UnitBuff(p,i)iffthenifstring.find(f,s)thenreturntrueendelsereturnfalseendendreturnfalseend

  7、救助:救治团队或小组中健康度最低的成员,包括自己一个人。s医疗魔法名,mh最少的治疗量,为了不浪费魔法

  /scriptfunctionH(s,mh)p,d=HL()ifd>=mhthenTargetUnit(p)C(s)endend

  8、施法:施放魔法,检查魔法值

  /scriptfunctionC(s,m)ifm==nilorUnitMana("player")>=mthenCastSpellByName(s)endend

  9、法助:如果没有目标,则选择自己作为施法对象,用于释放增益魔法

  /scriptfunctionTS(p)ifp==nilthenp="player"endifSpellIsTargeting()thenSpellTargetUnit(p)endend

  10、锁敌:没有目标,则选定最近的敌人;如果目标为友方单位,则协助友方

  /scriptfunctionTE()ifUnitName("target")==nilorUnitIsDead("target")thenTargetNearestEnemy()elseifUnitIsFriend("player","target")thenifUnitCanAssist("player","target")thenAssistUnit("target")elseTargetNearestEnemy()endendend

  11、怒击:施放终极技,检查能量点

  /scriptfunctionCP(s,m,e)ifGetComboPoints()>=eandUnitMana("player")>=mthenCastSpellByName(s)endend

  12、破甲:精灵之火

  /scriptfunctionFA()ifnotBU("Faerie")thenC("精灵之火(野性)")endend

  13、猛虎:猛虎之怒

  /scriptfunctionTG()ifnotB("Tiger")thenC("猛虎之怒",30)endend

  然后在人物专用宏里建立治疗宏

  以我的小德鲁伊为例:

  1、愈合

  /scriptH("愈合",800)

  /scriptH("愈合(等级4)",600)

  /scriptH("愈合(等级3)",500)

  /scriptH("愈合(等级2)",300)

  /scriptp,d=HL()ifnotB("Rejuvenation",p)thenTargetUnit(p)C("回春术")end

  2、治疗

  /scriptH("治疗之触",900)

  /scriptH("治疗之触(等级5)",700)

  /scriptH("治疗之触(等级4)",450)

  /scriptH("治疗之触(等级3)",250)

  /scriptp,d=HL()ifnotB("Rejuvenation",p)thenTargetUnit(p)C("回春术")end

  注意在每个治疗魔法宏后面加入一个瞬发的治疗宏,德鲁伊是回春术,这样在跑动中会自动释放这个瞬发魔法

  这两个治疗宏能够实现

  *自动选取自己所在团队或小组中受伤最严重的进行治疗,包括自己

  *根据被治疗对象所损失的得血量自动选择合适的魔法以及合适等级的魔法

  *根据被治疗者的等级选择合适的治疗魔法

  *如果自己在跑动中施放法术,则自动选取瞬发魔法进行治疗

  *如果已经释放了长效的治疗术,则不再追加释放

  当我变身为豹子的时候:

  我的盗贼类似的豹子德攻击宏:

  这个宏实现:

  *如果没有目标,则选中最近的敌人

  *如果目标是战友,则选中战友正在攻击的敌人

  *如果处于隐形状态,则施展毁灭背刺,否则施展撕碎背刺

  1、攻击

  /scriptFA()TE()CP("凶猛撕咬",35,4)ifnotBU("GhoulFrenzy")thenCP("撕扯",30,4)endifnotBU("Disembowel")thenC("扫击",40)endC("畏缩",60)C("爪击",45)TG()

  /scriptif(notPlayerFrame.inCombat)thenC("攻击")end

  2、背刺

  /scriptTE()ifB("Ambush")thenC("毁灭",60)elseC("撕碎",60)end

  3、突袭

  /scriptTE()ifB("Ambush")thenC("突袭",50)elseC("撕碎",60)end

  当我变身为熊时

  /scriptFA()TE()ifnotBU("Physical")thenC("低吼")endifnotBU("Demoralizing")thenC("挫志咆哮",10)endC("槌击",10)

  /scriptif(notPlayerFrame.inCombat)thenC("攻击")end

  宏建立好后,把上面的通用宏,除了初始,放置到第5个工具栏;把初始和几个人物专用宏放置到手边的工具栏上,以后进入游戏首先按初始,初始化运行环境,就可以使用智能宏了。
百度有很多自己搜下 复制就OK

回答3:

/equip [noequipped:单手剑]剑的名字

换装备宏.
包括换副手