-- 作者:云中漫步
-- 发布时间:2007/4/1 12:14:20
-- 收集实用的牧师宏
真正实用的牧师宏
说明:可以为低级职业加盾加buff。在和一些低级玩家组队或是公会带新人帮忙时非常有用。 我自己copy了官方链接中的宏,测试成功,无问题。 直接copy下面的宏,由于有些论坛格式的限制,我稍微改动了一下,相信没问题,如果不行,打开官方地址copy。
-------------------------------------------------------------------------------------- Power Word: Fortitude /script r=Spell_Rank;l={1,12,24,36,48,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Power Word: Fortitude(Rank "..i..")");break;end;end;end
Example for a Level 60 Priest: /script r=6;l={1,12,24,36,48,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Power Word: Fortitude(Rank "..i..")");break;end;end;end
Shadow Protection /script r=Spell_Rank;l={30,42,56};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Shadow Protection(Rank "..i..")");break;end;end;end
Example for a Level 60 Priest: /script r=3;l={30,42,56};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Shadow Protection(Rank "..i..")");break;end;end;end
Power Word: Shield /script r=Spell_Rank;l={6,12,18,24,30,36,42,48,54,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Power Word: Shield(Rank "..i..")");break;end;end;end
Example for a Level 60 Priest: /script r=10;l={6,12,18,24,30,36,42,48,54,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Power Word: Shield(Rank "..i..")");break;end;end;end
Macro for Self-Casting Spells /script r=Spell_Rank;TargetByName("name");CastSpellByName("Spell_Name(Rank "..r..")");
[em]13[/em] ************************************************************************************ 提示你和你加血对象的坐标。
/script SetMapToCurrentZone(); Px,Py=GetPlayerMapPosition("player"); Tx,Ty=GetPlayerMapPosition("player");SendChatMessage(format("我在 %s %s,坐标 %d, %d",GetZoneText(),GetSubZoneText(),Px*100,Py*100),"say");SendChatMessage(format("目标在 %s %s,坐标 %d, %d",GetZoneText(),GetSubZoneText(),Tx*100,Ty*100),"say"); ************************************************************************************ 选择你周围血量低于70%的团队中的人,加血!(不管是不是你小队中的人,你甚至可以不转身,不看血条,盲目的点击这个宏,你也可以准确的给周围掉血的人加血,同时不丢失你的目标,永远不会让你看见你身边的人倒下)
/script for i=1,40 do TargetNearestFriend(); if UnitHealth("target")/UnitHealthMax("target") < 0.7 then if UnitIsPlayer("target") then CastSpellByName("快速治疗") end end end; TargetLastTarget(); ************************************************************************************ 给周围的敌人驱散buff用的,省得到时候跑得飞快的敌人你找不到: /script for i=1,40 do TargetNearestEnemy(); if not UnitIsPlayer("target") then CastSpellByName("驱散魔法") end end; TargetLastTarget(); ***********************************************************************************\' ===============分割线===================== 下面就要说到这个宏,用它可以大大提高治疗质量: /script if ((UnitHealthMax("target"))-(UnitHealth("target"))<1) then SpellStopCasting();end 此宏作用为判断目标血量,如果满血,停止当前动作。 ===============分割线===================== 推荐两种治疗方法: (1)治疗前判断,目标费血则施放“次级治疗波(等级 6)”如果目标满血则无动作,通过宏操作: /script if ((UnitHealthMax("target"))-(UnitHealth("target"))>1) then CastSpellByName("次级治疗波(等级 6)");end PS: (UnitHealthMax("target")) 为目标最大血量,(UnitHealth("target")) 为目标当前血量,((UnitHealthMax("target"))-(UnitHealth("target"))>1) 的意思就是:目标当最大血量减去当前血量大于1。CastSpellByName("次级治疗波(等级 6)") 意思是施放魔法("次级治疗波(等级 6)")。次级治疗波(等级 6) 为萨满治疗技能名称和等级,职业不同请自行更换。 (2)无限吟唱法。此方法适用于MT治疗组,不知道大家在看一些强会的视频中有没有注意到,他们的治疗者都是在不停的施放魔法。他们就是用这个方法: 所有MT治疗组成员先将/script if ((UnitHealthMax("target"))-(UnitHealth("target"))<1) then SpellStopCasting();end做成宏,设置一个快捷键。锁定目标为MT,然后开始施放大治疗,当施放魔法还差最后一点结束的时候按宏快捷键,动作结束再开始释放大治疗,按快捷键,循环。 *********************************************************************************** 原因找到了,我直接copy原因为帖里的marco就ok的,楼主是因为这里论坛的格式,所以稍微修改了一下宏,比如某些地方加了空格,可能是这个原因造 成的。以下是官方网直接copy过来的,我自己修改了。应该可以的,大家可以试试直接copy到游戏里,如果还不行就去官方网原贴copy。 原帖地址: http://forums.worldofwarcraft.co ... amp;tmp=1#post81234 --------------------------------------------------------------------------
Power Word: Fortitude /script r=Spell_Rank;l={1,12,24,36,48,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Power Word: Fortitude(Rank "..i..")");break;end;end;end
Example for a Level 60 Priest: /script r=6;l={1,12,24,36,48,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Power Word: Fortitude(Rank "..i..")");break;end;end;end
Shadow Protection /script r=Spell_Rank;l={30,42,56};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Shadow Protection(Rank "..i..")");break;end;end;end
Example for a Level 60 Priest: /script r=3;l={30,42,56};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Shadow Protection(Rank "..i..")");break;end;end;end
Power Word: Shield /script r=Spell_Rank;l={6,12,18,24,30,36,42,48,54,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Power Word: Shield(Rank "..i..")");break;end;end;end
Example for a Level 60 Priest: /script r=10;l={6,12,18,24,30,36,42,48,54,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for i=r,1,-1 do if (t>=l[i]-10) then CastSpellByName("Power Word: Shield(Rank "..i..")");break;end;end;end
Macro for Self-Casting Spells /script r=Spell_Rank;TargetByName("name");CastSpellByName("Spell_Name(Rank "..r..")");
|