LUACN论坛

 找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
热搜: YJWOW MagicStone BoL
查看: 12677|回复: 24

[教学]60年代全职业可用最全宏命令

[复制链接]
发表于 2017-6-2 09:11:33 | 显示全部楼层 |阅读模式
本帖最后由 cwendian 于 2017-6-16 20:14 编辑

盗贼

首先说明一下,宏无法判断是否在背后,所以做不出背后就背刺,否则就邪恶之类的宏,不要再问了
绷带不丢星,这其实就是自我施法,暴雪已经整合了这个功能,打开主菜单 -> 界面设置 -> 自动自我施法 打个勾就解决了

冷血 + 剔骨
如果目标是怪,连击点>=4才冷剔,否则普通剔骨;
如果目标是玩家,连击点>=3就冷剔,如果冷血未CD,才使用普通剔骨。
/script local p,f=GetComboPoints(),UnitIsPlayer("target");if f and p>2 or not f and p>3 then CastSpellByName("冷血");SpellStopCasting();end;
/施放 剔骨

剑刃乱舞 + 护符
/script c,s,x,u,p,d,e,_=CastSpellByName,SpellStopCasting;GetInventoryItemCooldown,UseInventoryItem,"player";c("剑刃乱舞");s();_,d,e=x(p,13);if d<2 and e>0 then u(13);else _,d,e=x(14);if d<2 and e>0 then u(14);end;end;

自动切割宏(一键输出)
平时用邪恶搌星 若无切割状态 只要有星 立即施放切割 若有 则继续 邪恶搌星 若能搌到5星时切割状态还在 则施放剔骨
/script local p,c,b,i,f=GetComboPoints(),CastSpellByName;for i=1,16 do b=UnitBuff("player",i);if b and strfind(b,"SliceDice") then f=1;break;end;end;if p>0 and not f then c("切割");elseif p==5 and f then c("剔骨");else c("邪恶攻击");end;

自动割裂宏
平时用邪恶搌星 若目标无割裂状态 只要有星 立即施放割裂 若有 则继续 邪恶搌星 若能搌到5星时割裂状态还在 则施放剔骨
/script local p,c,d,i,f=GetComboPoints(),CastSpellByName;for i=1,16 do d=UnitDebuff("target",i);if d and strfind(d,"Rupture") then f=1;break;end;end;if p>0 and not f then c("割裂");elseif p==5 and f then c("剔骨");else c("邪恶攻击");end;

偷袭起手,护符 + 背刺
/script local c,a,_=CastSpellByName;_,_,a=GetShapeshiftFormInfo(1);if a then c("偷袭");elseif UnitMana("player")>=60 then if GetInventoryItemCooldown("player",13)==0 then UseInventoryItem(13);SpellStopCasting();end;c("背刺");end;
护符放在饰品1上
如果在潜行状态,按第一下偷袭,再按就护符+背刺,不在潜行状态的话直接护符+背刺
自己掌握好距离和能量

邪恶还击宏
用 还击 在动作条上的序号替换下边红色字,查编号看上边基础知识
/script local s,d=GetActionCooldown(还击编号);if IsUsableAction(还击编号) and d<2 then CastSpellByName("还击");else CastSpellByName("邪恶攻击");end;

出血鬼魅宏
用 鬼魅攻击 在动作条上的序号替换下边红色字,查编号看上边基础知识
/script local c,s,d=CastSpellByName,GetActionCooldown(鬼魅编号);if d<2 then c("鬼魅攻击") else c("出血");end;

法术书版
/script local c,s,d=CastSpellByName,GetSpellCooldown(鬼魅编号,"spell");if d<2 then c("鬼魅攻击") else c("出血");end;

RAID专用: 平时邪恶攻击,目标转向自己就闪避
/script if UnitIsUnit("targettarget","player") then CastSpellByName("闪避");SpellStopCasting();end;CastSpellByName("邪恶攻击");

预备 + 消失
能消失就消失,消失冷却中就预备
消失编号参见上边基础知识
/script local c,s,d=CastSpellByName,GetActionCooldown(你消失编号);if d>2 then c("预备");SpellStopCasting();end;c("消失");

法术书版
/script local c,s,d=CastSpellByName,GetSpellCooldown(你消失编号,"spell");if d>2 then c("预备");SpellStopCasting();end;c("消失");

致盲 + 绷带
没满60级的或者在战场中的绷带名自己改
/施放 致盲
/script local b,s,l;for b=0,4 do for s=1,18 do l=GetContainerItemLink(b,s);if l and strfind(l,"厚符文布绷带") then UseContainerItem(b,s,1);break;end;end;end

一键脱光
注意,你身上的包至少要都是16格的
local e,b,s=0;for b=0,4 do for s=1,16 do if not GetContainerItemLink(b,s) then while e<18 do e=e+1;if e==11 then e=16;end;if GetInventoryItemLink("player",e) then PickupInventoryItem(e)ickupContainerItem(b,s);break;end;end;end;end;end

远程武器宏
自动判定当前远程武器类型而决定使用该种武器进行射击,弓,弩使用箭,枪械使用子弹
这个不会切换,所以弹药自己处理
/script local l,_=GetInventoryItemLink("player",18);_,_,l=strfind(l,"item%d+)");_,_,_,_,_,l=GetItemInfo(l);l=strsub(l,1,6);if l~="投掷" then l=l.."射击";end;CastSpellByName(l);

1.12新潜行宏(不会因反复按而导致取消潜行)
/script local a,_;if not UnitAffectingCombat("player") then _,_,a=GetShapeshiftFormInfo(1);if not a then CastSpellByName("潜行");end;end;

暗夜精灵贼专用 - 潜行CD中使用影遁,连续按也不会取消影遁,潜行冷却完毕使用潜行,连续按不会取消潜行
连续按不取消影遁写不下了,去掉,但潜行中不取消潜行还可以,用时自己注意点
把潜行放动作条上,查出编号,替换下边红色字,查编号看上边基础知识
/script local c,s,d,a,_=CastSpellByName;_,_,a=GetShapeshiftFormInfo(1);if not a then s,d=Get(潜行编号);if d>2 then c("影遁");else c("潜行");end;end;




盗贼~~~

全程切割
/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()>0 and t<1) or UnitHealth("target")<0) then CastSpellByName("切割") end
大于一星且无切割buff时施放切割

自动剔骨
/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()>4 and t==1) or UnitHealth("target")<0) then CastSpellByName("剔骨") end
当有切割buff时,5星剔骨

PvE一键DPS宏
/script local p,c,b,i,f=GetComboPoints(),CastSpellByName;for i=1,16 do b=UnitBuff("player",i);if b and strfind(b,"SliceDice") then f=1;break;end;end;if p>0 and not f then c("切割");elseif p==5 and f then c("割裂");else c("邪恶攻击");end;
战斗剑专精作用是有星就切割5星就割裂平时邪恶攻击,战斗匕首就把邪恶攻击改成背刺即可

PvE一键DPS宏2
/script if (UnitIsUnit("targettarget","player")) then CastSpellByName("闪避") end;
/script if (GetComboPoints() >= 5) then CastSpellByName('切割") else CastSpellByName("邪恶攻击"); end;
NAXX教官BOSS,OT后BOSS看你自动看闪避,5星就切割,平时邪恶攻击



/script if (UnitMana("layer")>=10) and (IsUsableAction(ID#)) then CastSpellByName("Riposte");end/script if (UnitMana("layer")>=40) then CastSpellByName("Sinister Strike(Rank 8)"); end player是你的名字,ID#是你还击所在的位置(比如数字3)。




/script if ( not CursorHasItem(0) ) then PickupContainerItem(0,1); PickupInventoryItem(16); end
not CursorHasItem(0):0为你的主行囊就是最右边那个包包,可以换1-4,根据自己的爱好决定
PickupContainerItem(0,1):这里的0代表你的哪个背包,请注意和前面的数字要一样,也就是说你设置的是第几个包,这里也要和前面一样的数字。1代表包里面的位置(从左到右,从上到下)
PickupInventoryItem(16):这里的16是代表换主手武器,如果你想换副手武器的话把他改成17就可以了
补充:由于我的剑是绑定主手的所以才有上面的东东,对于主副手都能用的剑就不用这么麻烦了。主副手武器互换的函数代码为以下:
/script PickupInventoryItem(16); PickupInventoryItem(17);

冰箱能用就冰箱,没冷却就急速冷却+冰箱:
把 寒冰屏障 放到一个你不用的按钮上,记下编号,编号看上边基础知识,
把红色字用你查到的编号代替
/script local c,i,b,f,d,_=CastSpellByName;for i=1,16 do b=UnitBuff("player",i);if b and strsub(b,5)=="Frost" then f=1;break;end;end;if not f then _,d=GetActionCooldown(你冰箱编号);if d>2 then c("急速冷却");SpellStopCasting();end;c("寒冰屏障");end;

也可以使用法术书编号来节省动作条,编号看上边基础知识
/script local c,i,b,f,d,_=CastSpellByName;for i=1,16 do b=UnitBuff("player",i);if b and strsub(b,5)=="Frost" then f=1;break;end;end;if not f then _,d=GetSpellCooldown(你冰箱编号,"spell");if d>2 then c("急速冷却");SpellStopCasting();end;c("寒冰屏障");end;

奥术强化+护符+炎爆术
护符放哪里无所谓,会自动开已经冷却的护符
/script local c,x,u,s,p,d,e,_=CastSpellByName,GetInventoryItemCooldown,UseInventoryItem,SpellStopCasting,"player";c("奥术强化);s();_,d,e=x(p,13);if d<2 and e then u(13);else _,d,e=x(p,14);if d<2 and e then u(14);end;end;s();c("寒冰箭");

气定神闲+炎爆术
/施放 气定神闲
/script SpellStopCasting();
/施放 寒冰箭

平时冰箭,出灵风8件效果就火球
/script local c,i,b,f=CastSpellByName;for i=1,16 do b=UnitBuff("player",i);if b and strfind(b,"Telep") then f=1;break;end;end;if f then c("火球术");else c("寒冰箭");end;

这类宏有个特点,平时用小技能,在特定buff出现后换大技能,比如这里冰箭就是小技能,火球就是大技能
既然分出了大小,那就知道可以怎么改了,火球术可以改成其他“大技能”,比如 炎爆术
冰箭可以换成其他“小技能”,比如 灼烧,都是中国字,别跟我说你不会

平时冰箭,出奥术专注效果就火球
/script local c,i,b,f=CastSpellByName;for i=1,16 do b=UnitBuff("player",i);if b and strfind(b,"ManaB") then f=1;break;end;end;if f then SpellStopCasting();c("火球术");else c("寒冰箭");end;

同上,火球术可以改成其他的,比如 炎爆术,奥术飞弹,冰箭可以改成 灼烧

平时冰箭,出奥术专注 或 出灵风8件效果就火球
奥术专注是下个法术免费,所以一旦出了特效,要马上取消当前法术,换大的,否则免费特效就被当前法术浪费了
而灵风8件是下个法术瞬发,当前正在引导的不受影响,所以不用取消当前的
由于256字节限制,要取消两个都取消,否则都不取消,那就是说必须都取消,这样灵风会损失当前引导的法术
这种损失就是半个冰箭或者半个灼烧,如果大家认为这种损失可以接受的话,就用这个合并版:
/script local c,i,j,b,f=CastSpellByName;for i=1,16 do b=UnitBuff("player",i);if b and (strfind(b,"ManaB") or strfind(b,"Telep")) then f=1;break;end;end;if f then SpellStopCasting();c("火球术");else c("灼烧");end;

1级奥暴骗节能,出节能就用顶级奥暴
/script local c,i,b,f=CastSpellByName;for i=1,16 do b=UnitBuff("player",i);if b and strfind(b,"ManaB") then f=1;break;end;end;if f then SpellStopCasting();c("魔暴术");else c("魔暴术(等级 1)");end;

灼烧叠5层就火球,否则继续灼烧
/script local c,i,d,n,f=CastSpellByName;for i=1,16 do d,n=UnitDebuff("target",i);if d and strfind(d,"SoulB") then f=1;break;end;end;if f and n==5 then c("火球术");else c("灼烧");end;

打贼奥爆宏
有目标就放最高级奥暴,没有目标就放1级奥暴
/script if UnitCanAttack("target","player") then CastSpellByName("魔暴术");else CastSpellByName("魔暴术(等级 1)");end;

自动补 冰甲术,奥术智慧,魔法抑制
缺啥补啥,闲着没事按按能强身健体,定国安邦……
/script local n,s,k,j,b,f={"tArm","lSen","hMag"},{"冰甲术","奥术智慧","魔法抑制"};for k=1,3 do f=nil;for j=1,16 do b=UnitBuff("player",j);if b and strfind(b,n[k]) then f=1;break;end;end;if not f then CastSpellByName(s[k]);break;end;end;

自动把被控制的队友变羊,小队,团队通用版
对于会控制玩家的BOSS很有用,比如哈卡,AQ神庙1
/script local n,p,i,t=4,"party";if UnitInRaid("player") then n=40;p="raid";end;for i=1,n do t=p..i;if UnitCanAttack("player",t) then TargetUnit(t);CastSpellByName("变形术");SendChatMessage("%t 被控制,我把他变羊了~",p);break;end;end;

随机变羊,猪,乌龟宏
/script local s,m,r={"",":龟",":猪"},{"%t变羊了","%t是乌龟","%t是猪"},random(3); CastSpellByName("变形术"..s[r]);SendChatMessage(m[r],"yell");
可以根据变的种类喊话,想喊什么自己改

火冲打图腾
/script local t,n,i,_={"根基","战栗","地缚","灼热","清毒"};for _,i in t do n=i.."图腾";TargetByName(n,1);end;CastSpellByName("火焰冲击(等级 1)");



/script i=1;t=0;while UnitBuff("player",i) do if  nd(UnitBuff("player",i),"Stealth") then t=1;break;end;i=i+1;end;if t=1 then UseAction(38);CastSpellByName("伏击") else UseAction(37) end
/施放 邪恶攻击
动作条里面的技能栏编号:
主动作条1为 1--12
主动作条2为13--24
主动作条3(右1)为25--36
主动作条4(右2)为37--48
主动作条5(右下)为49--60
主动作条6(左下)为61--72
技能书中的技能遍号是按照从上到下,从左至右的顺序排列的。
一般种族特长,比如亡灵意志、影遁都是在综合里面第一个,也就是1。


另1:将“TAB”的最远距离改为50码 (最大是50)

/console SET targetNearestDistance "50"

另2:用TAB选择身后的目标最远设为50码 (默认是10码)

/console SET targetNearestDistanceRadius "50"


主动作条1为 1--12

主动作条2为13--24

主动作条3(右1)为25--36

主动作条4(右2)为37--48

主动作条5(右下)为49--60

主动作条6(左下)为61--72

/script C=CastSpellByName;
/script U=IsUsableAction
/script if(U(80)==nil) then UseAction(79);elseif(GetActionCooldown(80)==0) then UseAction(80);else UseAction(79);end
/script if not IsCurrentAction(81) then UseAction(81) end;


冰箱极冷
/script C=CastSpellByName;
/script U=IsUsableAction
/script if(U(42)==nil)then UseAction(43);elseif(GetActionCooldown(42)==0)then UseAction(42);else UseAction(43);end


/script C=CastSpellByName;
/script U=IsUsableAction
/script if(U(42)==nil)then UseAction(43);elseif(GetActionCooldown(42)==0)then UseAction(42);end



1、克苏恩p2打断巨眼触须宏,不在范围内或者没有巨眼的时候不会释放打断。
439191  123123

/target Giant Eye Tentacle
/script if UnitName("target")=="Giant Eye Tentacle"  then SendChatMessage("巨人眼球触须出现!!!立即控制!!!","raid"); end
/script if UnitName("target")=="Giant Eye Tentacle"  then CastSpellByName("法术反制"); end
/script TargetLastEnemy()


2、冰箱宏,

/script SpellStopCasting()
/施放 寒冰屏障


3、双开宏


/script SpellStopCasting()
/script UseInventoryItem(13)
/script SpellStopCasting()
/script UseInventoryItem(14)


4、反制宏


/script SpellStopCasting()
/施放 法术反制

自动把被控制的队友变羊,小队,团队通用版
对于会控制玩家的BOSS很有用,比如哈卡,AQ神庙1
/script local n,p,i,t=4,"party";if UnitInRaid("player") then n=40;p="raid";end;for i=1,n do t=p..i;if UnitCanAttack("player",t) then TargetUnit(t);CastSpellByName("变形术");SendChatMessage("%t 被控制,我把他变羊了~",p);break;end;end;

随机变羊,猪,乌龟宏
/script local s,m,r={"",":龟",":猪"},{"%t变羊了","%t是乌龟","%t是猪"},random(3); CastSpellByName("变形术"..s[r]);SendChatMessage(m[r],"yell");
可以根据变的种类喊话,想喊什么自己改


另1:将“TAB”的最远距离改为50码 (最大是50)

/console SET targetNearestDistance "50"

另2:用TAB选择身后的目标最远设为50码 (默认是10码)

/console SET targetNearestDistanceRadius "50"

自动给团队中血最少的人加血
/script local p,h,i,j="raid",UnitHealth,1;for j=2,GetNumRaidMembers() do if h(p..i)>h(p..j) and h(p..j)>0 then i=j;end;end;p=p..i;if(not UnitIsDead(p))and UnitIsVisible(p) then TargetUnit(p);CastSpellByName("次级治疗波");end

转团宏
/script ConvertToRaid()


退队小退宏
/script LeaveParty()

/camp

自动接受组队
自动确认组队宏
/script T,F=T or 0,F or CreateFrame("frame")if X then X=nil else X=function()local t=GetTime()if t-T>1 then StaticPopup1Button1:Click()T=t end end end F:SetScript ("OnUpdate",X)



评分

参与人数 1伸手费 +25 收起 理由
狗血编剧男 + 25 很给力!

查看全部评分

相关帖子

回复

使用道具 举报

发表于 2017-6-2 11:08:58 | 显示全部楼层
有点乱。。我可以这么说吗~
回复 支持 反对

使用道具 举报

发表于 2017-6-2 11:24:39 | 显示全部楼层
按职业来  可以咯 你太挑剔了 有就不错了 如果非要改进 那就把职业名字着一下色

点评

确实是挑剔,就是觉得复制粘贴得没用什么心。  发表于 2017-6-5 09:01 AM
回复 支持 反对

使用道具 举报

发表于 2017-6-3 22:34:44 | 显示全部楼层
怎么没有战士的 ,没看到还是错过了
回复 支持 反对

使用道具 举报

发表于 2017-8-21 20:21:33 | 显示全部楼层
谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!谢谢分享!!!!!!!
回复 支持 反对

使用道具 举报

发表于 2017-9-8 21:05:30 | 显示全部楼层
只有两个么 其他职业也
回复 支持 反对

使用道具 举报

发表于 2017-10-3 21:06:09 | 显示全部楼层
学习学习!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
回复 支持 反对

使用道具 举报

发表于 2017-10-7 15:56:30 | 显示全部楼层
谢谢LZ有没有1个超级宏的做法啊
回复 支持 反对

使用道具 举报

发表于 2018-6-7 11:15:27 | 显示全部楼层
怎么没有战士宏。。。心酸。。。。求一发
回复 支持 反对

使用道具 举报

发表于 2018-9-19 14:30:30 | 显示全部楼层
虽然有点乱,费心整理!~+1
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

小黑屋|手机版|Archiver|LUACN论坛

GMT+8, 2024-4-16 02:06 PM , Processed in 0.093339 second(s), 35 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表