阅读本文前,可先参考本人另一篇文章《巨集的基本功能与限制》。本文收录了一些常用或不常用的巨集样本,部份自己撰写,部份自网路上取用。便于不愿学习、不能学习、不屑学习、不想学习巨集的板友直接修改。若板友有补充、建议、指正、提问,亦可直接于此发表回覆。
阅读本文前,可先参考本人另一篇文章《巨集的基本功能与限制》。本文收录了一些常用或不常用的巨集样本,部份自己撰写,部份自网路上取用。便于不愿学习、不能学习、不屑学习、不想学习巨集的板友直接修改。若板友有补充、建议、指正、提问,亦可直接于此发表回覆。
为节省版面,本处巨集若无另行标示,皆应自行在首行添加「#showtooltip」以显示技能或物品提示。关于「#showtooltip」的功能,可参阅《巨集的基本功能与限制》第二篇。
本文许多范例皆包含「mouseover」滑鼠对象单位,可能不符合部份板友的使用习惯,可尝试适应或自行修改。
基本巨集
此部份为基本范例,各项范例多半可以自行拼凑、组合、应用。
980216:施放技能并喊话
/施放技能名称
/ y 喊话内容
其中「y」为大喊,可以替换成你要喊话的频道,如「p」队伍、「g」公会、「ra」团队、「rw」团队警告等等。可加入相关内建变数:「%T」为目标的名字,「%F」为专注目标的名字。比如:「/y我要对%T开怪啰!」
980216:同时施放
/施放技能名称
/施放技能名称
……
/施放技能名称
仅能作用于不互卡公用冷却时间的技能。
980216:施放同时使用物品
/使用物品名称
/使用物品名称
……
/使用技能名称
/施放技能名称
与前一条相同,仅能作用于不互卡公用冷却时间的技能、物品。
980216:循环施放
/连续施法reset=N/target/combat/shift/alt/ctrl 技能名称 , 技能名称 , ……技能名称
「N」可替换为数字,代表秒数,即后N秒后重置顺序(以最近一次使用该巨集开始算),从第一招开始施放。「target」为选取(或更换)目标后重置;「combat」为战斗后重置;「shift」、「alt」、「ctrl」则为以这些辅助键启动巨集时重置,可自行取舍,将不需要的条件删去即可。
980216:战斗中施放不同技能
/施放[combat] 战斗中技能名称 ; 非战斗中技能名称
通常用于防职开怪。比如「战斗中技能名称」可以填入「冲锋」,「非战斗中技能名称」可以填入「英勇打击」。以前版本也常在非战斗中以一级技能省魔抓潜行,现今技能消耗标准化,此法已不可行。
980216:依辅助键施放不同技能
/施放[mod:shift] Shift技能名称 ;[mod:alt] Alt技能名称 ;[mod:ctrl] Ctrl技能名称 ; 无辅助键时技能名称
单纯给没装动作条插件的玩家省格子及缩短手指移动距离。
980217:依滑鼠按键施放不同技能
/施放[btn:2] 右键技能名称 ;[btn:3] 中键技能名称 ; 一般技能名称(左键或其他键)
与前项差不多,单纯省格子。
感谢板友jack3107提供。(原文5楼)
980216:取消指定增益
/取消光环增益名称
相当于滑鼠右键点击增益图示,就这么简单,没了。= =
980420:依辅助键与滑鼠按键施放不同技能
/施放[mod:alt,btn:2] 技能一 ;[mod:alt] 技能二 ;[mod:ctrl,btn:2] 技能三 ;[mod:ctrl ] 技能四 ;[mod:shift,btn:2] 技能五 ;[mod:shift] 技能六 ;[btn:2] 技能七 ; 技能八
技能一:ALT+右击
技能二:ALT+一般(指滑鼠左键或键盘快捷键)
技能三:CTRL+右击
技能四:CTRL+一般(指滑鼠左键或键盘快捷键)
技能五:SHIFT+右击
技能六:SHIFT+一般(指滑鼠左键或键盘快捷键)
技能七:右击
技能八:一般(指滑鼠左键或键盘快捷键)
简单讲就是一个格子塞八种技能,建议拿来整合不常用的技能,毕竟常用技能这种放法不甚便捷。加入「bnt:3」的话还能配合滑鼠中键,整合十二种技能,如果滑鼠有特殊键(如罗技、微软的高级鼠多半提供二个至多个特殊键),甚至能配合「bnt :4」、「bnt:5」等加入更多的技能。前提是你255个字装得下。
980301:对特定对象施放技能
/施放[@ UNIT ] 技能名称
修改其中「UNIT」即可改变目标。
target:目前目标。
mouseover:游标对象。
focus:专注目标。
player:自身。
pet:宠物。
party1~party4:队友。
partypet1~partypet4:队友宠物。
raid1~raid40:团员。
raidpet1~raidpet40:团员宠物。
单位姓名:直接输入单位的姓名,如希瓦那斯、索尔等。(限同一团队内的单位)
所有对象后皆可接「target」代表该对象之目标。如「targettarget」为目标的目标;「targettargettarget」为目标的目标的目标;「focustarget」为专注目标的目标;「party1target」为第一个队友的目标。
980303:依姿态施放不同技能
/施放[stance: 1 ] 技能名称 ;[stance: 2 ] 技能名称 ; …… [stance: N ] 技能名称
修改数字以表示不同的姿态。若职业全姿态已学满,则数字代表:
980403:对物品使用技能
/施放技能名称
/使用物品名称
多半应用在猎人的喂食宠物、珠宝学的爆矿、附魔的拆解等等。
980902:依天赋施放不同技能
/施放[spec:1] 主天赋技能名称 ; 副天赋技能名称
或
/施放[spec:2] 副天赋技能名称 ; 主天赋技能名称
或
/施放[spec:1] 主天赋技能名称 ;[spec:2] 副天赋技能名称
980902:双天赋切换
/启用天赋[spec:1]2;1
使用主天赋时切换为副天赋,使用副天赋时切换为主天赋。
981028:依目标友好度施放技能
如目标为敌对,则施放技能一,否则施放技能二:
/施放[harm] 技能一 ; 技能二
如目标为友好,则施放技能一,否则施放技能二:
/施放[help] 技能一 ; 技能二
此二项功能相近,判断方式相反而已,可自行选用。不填「技能二」则只在符合状况时施放技能一。(注:harm代表「可攻击」,help代表「可治疗」,对于「不可治疗的友方单位」或「不可攻击的敌方单位」依旧会判定为假。)
990516:依引导法术连结状况施放技能
/施放[channeling: 引导法术名称 ] 引导状况下施放的技能名称 ; 其他状况技能名称
或者:
/施放[channeling] 引导状况下施放的技能名称 ; 其他状况技能名称
前者用于指定引导法术名称,后者则指所有引导法术。
这样看起来似乎没啥用,但是我们可以把条件反过来。详见后列:
/施放[nochanneling] 技能名称
或者:
/施放[nochanneling: 引导法术名称 ] 技能名称
意思是:没有处于引导状态,或者没有正在引导指定法术,才施放技能。如此可以避免一些技能打断引导。对于法师特别有用。
有一点要注意:引导不等于唱法,比如秘法飞弹、暴风雪这类「在施法过程中读条的」才算是引导,而「在施法前读条」只能算唱法,此条件仅对引导有用,对唱法无效。
一般通用
一般可供全职业或数个职业应用的巨集。
980216:设定专注目标并施放技能
/专注目标[@focus,noexists][@focus,dead][mod: alt ]
/施放[@focus,exists][] 技能名称
若专注目标不存在或死亡,或以「Alt」启动巨集,则设目前目标为专注目标。
若专注目标存在,对专注目标施放技能。否则以一般方式施放技能。
多用于控场职监控、补控场。其中「alt」可更改为「ctrl」或「shift」等。
980216:万用远程攻击
/施放[equipped:远程武器/魔杖,@mouseover,harm,nodead][equipped:远程武器/魔杖]射击;[equipped:投掷武器,@mouseover,harm,nodead][]投掷
自动判定目前装备该用射击还是投掷,简单说就是换装免换快捷列。
980326:通用对敌施放
/施放[@mouseover,harm,nodead][@mouseovertarget,harm,nodead][harm][@targettarget,harm] 技能名称
如果游标对象为敌对,且未死亡,则对游标对象施放技能。
否则,如果游标对象的目标为敌对,且未死亡,则对游标对象的目标施放技能。
否则,若目标为敌对,则对目标施放技能。
否则,若目标的目标为敌对,则对目标的目标施放技能。
可以点着防职直接攻击该防职正在打的怪,也可以一边打目前目标,一边用游标对其他对象,或者其他对象的目标放技能,很方便。
治疗通用
此部份能使用的技能有局限性,多以治疗技能为主。
980216:通用便捷治疗巨集
/施放[@mouseover,help,nodead][help][@targettarget,help][@player] 技能名称
游标对象为友方,且未死亡,则对游标对象施放技能;(游标移到队友人物、队伍大头或团队框架上就能补,省下点选目标的时间。)
不符前项,且目前目标为友方,则对目前目标施放技能;(一般治疗。)
不符前项,且目前目标的目标为友方,则对目标的目标施放技能;(打特定首领时可以无脑刷首领的目标。)
不符前项,则对自身施放技能。
简单说,有游标对象就对游标对象施放,没游标对象就对目标施放,无法对目标施放则对目标的目标施放,无法对目标的目标施放则对自己施放。适用于所有治疗、驱散、辅助技能。
980216:自动判定可补可打的技能
/施放[@mouseover,help,nodead,group][help,group][@targettarget,help,group][@mouseover,exists,nodead][] 技能名称
游标对象为友方,且游标对象未死亡,且自身在队伍或团队里,则对游标对象施放技能。
不符前项,且目标为友方,且自身在队伍或团队里,则对目标施放技能。
不符前项,且目标的目标为友方,且自身在队伍或团队里,则对目标的目标施放技能。
不符前项,且游标对象存在,则对游标对象施放技能。
不符前项,则依照一般方式施放技能。
此巨集应用在可伤害敌方亦可治疗友方的技能,如牧师的忏悟、圣骑士的神圣震击。简而言之,在队伍里时限制该技能只能拿来补,以免误中敌人而浪费法力,而单练时可拿来做伤害。
杂项巨集
本处收录一些比较少用的,或者难以分类的巨集。所有用到「SendChatMessage」函式的脚本,其「发送频道」处,都可以替换为:
SAY:说
EMOTE:表情
PARTY:小队
BATTLEGROUND:战场
GUILD:公会
OFFICER:干部
YELL:大喊
RAID:团队
RAID_WARNING:团队警告
102-01-28:目标姓名、职业、血量、魔量通报
/关闭巨集[noexists]
/跑local t,h,m="target",UnitHealth,UnitHealthMax SendChatMessage(("%%T(%s)生命:%s/%s( %.1f %) "):format(UnitClass(t), h(t),m(t),100*h(t)/m(t))," YELL ")
魔量版:
/关闭巨集[noexists]
/跑local t,p,m="target",UnitPower,UnitPowerMax SendChatMessage(("%%T(%s)魔量:%s/%s(%.1f%)"):format(UnitClass(t) ,p(t),m(t),100*p(t)/m(t))," YELL ")
血量+魔量版:
/关闭巨集[noexists]
/跑local t,h,hm,p,pm="target",UnitHealth,UnitHealthMax,UnitPower,UnitPowerMax SendChatMessage(("%%T(%s)血量:%s/%s(%.1f%%)魔量:%s/%s(%.1f%%)"):format(UnitClass(t),h(t),hm(t),100*h(t)/hm(t),p(t ),pm(t),100*p(t)/pm(t))," YELL ")
其中YELL为大喊,可替换为其他频道。
102-01-28:请求治疗、魔量通报
通报自身血量并求援,前项修改应用(将目标改成自身):
/跑local t,h,m=" player ",UnitHealth,UnitHealthMax SendChatMessage((" %s(%s)生命危急:%s/%s(%.1f%),请求治疗!"):format(UnitName(t),UnitClass(t),h(t),m(t),100 *h(t)/m(t))," YELL ")
魔量版:
/跑local t,p,m=" player ",UnitPower,UnitPowerMax SendChatMessage(("%s(%s)法力将罄: %s/%s(%.1f%),注意自保!"):format(UnitName(t),UnitClass(t),p(t),m(t),100*p(t)/m( t))," YELL ")
治疗职业专用,通报自身魔量,要求他人自保。将「player」改为「target」或其他单位,即可代目标或他人通报。
980324:寻找稀有怪物
/目标疯狂的因度雷生还者
/目标土克玛斯
/目标血色大领主黛伊昂
/目标祖尔德拉克哨兵
/目标格里根
/目标德碁
/目标大族长裘弗斯
/目标古老的普崔达斯
/目标希尔达娜·亡据者
/目标沸腾憎恨
/目标葛洛克拉
/目标『雕骨者』塞瑞安
/目标乒乒王
/目标『战争侍女』葳格迪斯
/目标『嗜血者』佩洛巴斯
/目标冰角
/目标方宝·机风
/目标老晶树
/目标奥托纳
/目标克洛许王
/目标罗奎纳哈克
感谢板友wolfjofei提供,原文:http://forum.gamer.com.tw/C.php?bsn=05219&snA=381147
980328:喊话带目标图示
/跑x,p={"{星星}","{圈圈}","{钻石}","{三角}","{月亮}","{方形}" ,"{十字}","{头颅}"},GetRaidTargetIndex("target")if(p)then x=x[p]else x=""end;SendChatMessage(" 文字 "..x..x. ." %T "..x..x.." 文字 "," YELL ")
喊话中的「x」即为图标,没标者不会显示。「%T」为目标名字。两个「文字」可自行修改为想要的内容(就是在目标名字前跟目标名字后的内容)。「YELL」为大喊,可修改为其他频道。
980403:随机喊话
/跑local s={" 发话1 "," 发话2 "," 发话N "} SendChatMessage(s[random(#s)]," YELL ")
发话以半形双引号包住,每个发话间以半形逗号隔开,基本上想写几个就写几个,不要超过255字元即可。然后注意修改的时候不要误删那个半形双引号「""」……
YELL为大喊,可修改为其他频道。
980421:在巨集内贴入物品连结、技能连结、天赋连结、成就连结等
用GUI介面创建的巨集,是无法含有物品或技能连结的(倒是可以贴专业技能连结),可以考虑用脚本创建一个含有连结的巨集,再用GUI介面修改。
在聊天框输入:
/跑CreateMacro(" 巨集名称 ", 0 ," 巨集内容 ", 0 )
其中巨集名称可以随意,巨集内容部份则使用一般方法贴入技能连结,第二个「 0」是指帐号共用巨集,若修改为「1」,则为角色专用巨集。其他部份则不需修改。(第一个「0」为巨集图示的编号,可以事后用GUI介面修改)
确认输入无误之后,按下「Enter」就像一般发话的方式送出,如果没有报错,代表成功。之后再打开巨集介面,找到你刚刚输入的巨集名称,然后作其他编辑,比如加入其他文字、修改巨集名称或图示等。
用这种方法需要注意的是,贴入巨集的连结文字虽然只有短短几个字,而GUI介面也是显示短短几个字,但实际储存时会变成「|cff71d5ff|Hspell:60119|h [黑色战熊]|h|r」这类东西,即便GUI介面显示未超过255字,但实际上已经远远超过,退出游戏后重新进入,就会被截断,因此应自行斟酌文字数量。
980629:奥杜亚攻城区石毁车乘客三合一巨集
/施放迫击炮
/施放防空火箭
/施放[@mouseover,noharm][noharm]取得弹药箱
功能一、迫击炮、防空火箭无脑乱射。
功能二、直接以游标对象抓取黄铁罐。
981102:冬握湖开战时间通报
/跑local g=GetWintergraspWaitTime() if(g)then local m,s=floor(g/60),g%60 SendChatMessage("冬握湖开战时间剩余:"..m .."分"..s.."秒"," YELL ")end
/跑local g=GetWintergraspWaitTime() if(g)then local m,s=floor(g/60),g%60 print("冬握湖开战时间剩余:"..m.."分"..s.."秒")end
前者的通报至频道,后者显示在自己的聊天视窗内。
981124:技能通报
/跑F=F or CreateFrame("frame");F:RegisterEvent("UNIT_SPELLCAST_SENT")F:SetScript("OnEvent",function(_,_,u,s,_,t)if(u=="player " and s==" 秘法射击 ")then SendChatMessage(" 喊话内容 "," YELL ") F:SetScript("OnEvent",nil)end end)
/施放秘法射击
这个大家贴来贴去,也不知道原始出处是哪了,总之就是注册了「UNIT_SPELLCAST_SENT」此一事件,判断技能施放是否成功,成功后才喊话。
本来是不想收在这,坦白说对在巨集内使用脚本注册事件挺反感的,况且使用CastYeller2之类的插件可以达到更好的效果,不过由于最近板上很多问题都是对此而发,也就干脆收了……
981201:随机坐骑脚本修改版
/下马
/离开载具[vehicleui]
/跑local t=GetZoneText()if(((t=="达拉然")and(GetSubZoneText()~="卡萨斯平台" ))or((t=="冬握湖")and(not GetWintergraspWaitTime()))or not IsFlyableArea())then t={ 地1栏位 , 地2栏位 , ……地n栏位 }else t={ 空1栏位 , 空2栏位 , ……空n栏位 }end CallCompanion("MOUNT",t[random(#t)])
自动判定所在区域是否能飞行,除了一般区域判定外,另外包含达拉然的卡萨斯平台,以及在冬握湖内时,判断是否开战。
栏位编号请打开坐骑页面:
第一页第一列为:1、2、3、4、5、6,第二列为7、8、9、10、11、12,第二页第一列为13、14、15、16、17、18,第二列为19、20、21、22、23、24,依此类推。
若嫌计算栏位麻烦,或可参见「981208:查询坐骑栏位编号」脚本。
原文:http://forum.gamer.com.tw/Co.php?bsn=05219&sn=4083185
981203:错误讯息、错误音效相关巨集
关闭错误音效:
/控制台Sound_EnableSFX 0
启动错误音效:
/控制台Sound_EnableSFX 1
隐藏错误讯息:
/跑UIErrorsFrame:Hide()
清除错误讯息:
/跑UIErrorsFrame:Clear()
显示错误讯息:
/跑UIErrorsFrame:Show()
很多无脑连按巨集,都会被错误讯息或错误音效洗爽爽。只要在巨集最前面加入关闭错误音效的指令,并在最后一行启动错误音效,就可以忽略巨集运行中所产生的任何错误音效,如「怒气不足」、「太远了」之类,而不影响非此巨集造成的错误音效。
错误讯息部份,只要在最后一行加入清除错误讯息的指令即可,但有时狂按之下还是会显示出来,可以在巨集最前面加入隐藏错误讯息,然后最后面加入清除和显示。
981208:查询坐骑栏位编号
/跑for i=1,GetNumCompanions("MOUNT")do local _,creatureName,_,_,_=GetCompanionInfo("MOUNT", i)print(i..":".. creatureName)end
由于「981201:随机坐骑脚本修改版」此一脚本,必须自己计算坐骑栏位编号,十分麻烦,因此写了个查询编号的脚本与之配合,直接把前列脚本贴入巨集或输入聊天即可查询所有坐骑的栏位编号。
981225:列出团队成员
/跑for i=1,GetNumRaidMembers() do print(UnitName("raid"..i))end
列出团队成员,用于贴上网页纪录等等。
990103:控制单位名条(血条)
关闭友方名条:
/控制台nameplateShowFriends 0
关闭敌人名条:
/控制台nameplateShowEnemies 0
开启友方名条:
/控制台nameplateShowFriends 1
开启敌人名条:
/控制台nameplateShowEnemies 1
开关敌方名条:
/跑local n,s="nameplateShowEnemies",SetCVar if(GetCVarBool(n)==1)then s(n,0)else s(n,1)end
开关友方名条:
/跑local n,s="nameplateShowFriends",SetCVar if(GetCVarBool(n)==1)then s(n,0)else s(n,1)end
此功能等同于按快捷键「V」。
990122:返回条件(可用于条件式喊话)
函式:SecureCmdOptionParse(" 条件内容 ")
功能是依照设定的条件返回指定的内容,可配合其他函式使用,最常见的是配合SendChatMessage进行喊话。范例如后:
使用shift与alt判断:
/跑SendChatMessage(SecureCmdOptionParse(" [mod:shift]喊话一;[mod:alt]喊话二 ")," YELL ")
使用目标友好状况判断:
/跑SendChatMessage(SecureCmdOptionParse (" [help]目标为友方喊话;[harm]目标为敌人喊话 ")," YELL ")
按键表情:
/跑DoEmote(SecureCmdOptionParse(" [btn:3]thank;[btn:2]bye;hello "))
可参考条件一览:http://horde.guinie.org/thread-513-1-1.html
990618:单位框架数值、百分比切换
/跑local p,s="statusTextPercentage",SetCVar if(GetCVarBool(p)==1)then s(p,0)else s(p,1)end
如果你没有使用额外的单位框架插件,这个巨集可以让你很轻易的切换血量、魔量等各种状态条的实际数值或百分比。(即是用脚本操作「介面设定——状态数值」里面的「显示百分比」选项。)
991211:水陆空坐骑
/下马
/离开载具[vehicleui]
/施放[btn:2] 指定坐骑名称(建议为陆地坐骑) ;[flyable] 空坐骑名称 ;[swimming] 水坐骑名称 ; 陆坐骑名称
改版后板上出现不少分享文章,不过写得都有点繁杂或累赘,所以特地补上这篇。
「btn:2」为滑鼠右键,因部份「flyable」为真的区域,却不能召唤空中坐骑,所以需要有一个强制召唤陆地坐骑的方法。可自行修改为「mod:辅助键」或其他条件。
离开载具及解除坐骑。
以滑鼠右键执行巨集即召唤指定坐骑;
否则,若人物在可飞行区域,则召唤空坐骑。
否则,若人物在游泳中,则召唤水坐骑;
否则,召唤陆坐骑。
随机坐骑版:
/下马
/离开载具[vehicleui]
/使用随机[btn:2] 指定坐骑名称(建议为陆地坐骑) ;[flyable] 空1 , 空2 , 空3 , 空n ;[swimming] 水1 , 水2 , 水3 , 水n ; 陆1 , 陆2 , 陆3 , 陆n
991211:语音声控、按键切换
/跑local v,s="VoiceChatMode",SetCVar if(GetCVarBool(v)==1)then s(v,0)else s(v,1)end
……就单纯切换语音功能的「声控」或「按键」。
991211:取得游标指向按钮名称
/跑print(GetMouseFocus():GetName())
使用「/点击」、「/click」指令时,需要填入按钮名称,往往查询「那个按钮到底是什么」是一件很麻烦的事情。有了此巨集,便可以把游标移到按钮上,并在聊天栏输入这个巨集,即可获得游标所指的按钮名称。
1000108:循环标记
/跑RIT=RIT or GetTime() if (not RIcon or RIcon==8 or GetMouseButtonClicked()==" RightButton " or GetTime()-RIT> 10 )then RIcon=1 print("重设标记顺序。")else RIcon=RIcon+1 end SetRaidTarget(" mouseover ",RIcon)RIT=GetTime()
对游标对象从星星开始标起,一路标到骷髅然后重来。
「GetMouseButtonClicked()=="RightButton"」代表用滑鼠右键点击则重置标记。
「RIT>10」代表巨集闲置十秒后重置标记。
「mouseover」是标记对象,可改为target、focus等。
1000527:自动计算角色伤害减免
显示版:
/跑local S,M,R,D,P,B= 25 , 5 , 102.4 ,GetDodgeChance(),GetParryChance(),GetBlockChance()print(string.format("闪%.2f,招%.2f,格%.2f,未%.2f,盾挡%.2f,总减免%.2f(盾挡%.2f),需求%.2f",D,P,B,M,S,D+P+B+ M,D+P+B+M+S,R))
通报版:
/跑local S,M,R,D,P,B= 25 , 5 , 102.4 ,GetDodgeChance(),GetParryChance(),GetBlockChance()SendChatMessage(string.format("闪%.2f,招%.2f,格%.2f,未%.2f,盾挡%.2f,总减免%.2f(盾挡%.2f),需求%.2f",D,P,B,M,S,D+P+B+ M,D+P+B+M+S,R)," GUILD ")
25是你的盾挡技能增加的格挡百分比,5是未命中百分比,102.4这个应该不用解释,单独设三个变数是为了将来游戏设定若有变动,可以快速修改。
通报版的「GUILD」即是通报频道。
职业巨集
此处收录针对职业特化的巨集,若为一般仅修改技能名则能通用的巨集,则不收。
战士
980216:一键冲锋、英勇打击,外加诡异的钓鱼
#showtooltip [equipped:鱼竿]钓鱼;[stance:1]冲锋;英勇打击
/施放[equipped:鱼竿]钓鱼;[nocombat,stance:1,@mouseover,harm,nodead][nocombat,stance:1]冲锋;[nocombat,nostance:1]战斗姿态;[combat,nostance:3]狂暴姿态;英勇打击
若装备钓竿则施放钓鱼;
若不符前项,且不在战斗中,且处于战斗姿态,且游标对象为敌对,则对游标对象施放冲锋;
若无游标对象,且不在战斗中,且处于战斗姿态,则对目标施放冲锋;
若不符前项,且不处于战斗姿态,则施放战斗姿态;
若不符前项,且处于战斗中,且不处于狂暴姿态,则施放狂暴姿态;
否则,英勇打击。
听起来复杂,简单说,这个巨集会让你在战斗中时切狂姿施放英勇打击,不在战斗中时切战姿施放冲锋,装备鱼竿时施放钓鱼,狂战武战皆适用,建议放在快捷键「1」。超级懒人专用。
980216:一键冲锋、阻扰、拦截
#showtooltip [stance:1]冲锋;[stance:2]阻扰;拦截
/施放[nocombat,stance:1,@mouseover,harm][nocombat,stance:1,harm]冲锋;[stance:2,@mouseover,exists][stance:2]阻扰;[combat,nostance:3]狂暴姿态;[stance:3,@mouseover,harm][stance:3,harm]拦截
若不在战斗中,且处于战斗姿态,且游标对象为敌对,则对游标对象施放冲锋;
若无游标对象,且不在战斗中,且处于战斗姿态,则对目标施放冲锋;
若不符前项,且处于防御姿态,且游标对象存在,则对游标对象施放阻扰;
若不符前项,且处于防御姿态,则以一般方式施放阻扰;
若不符前项,且处于战斗中,且不处于狂暴姿态,则施放狂暴姿态;
若不符前项,且处于狂暴姿态,且游标对象为敌对,则对游标对象施放拦截;
若不符前项,且处于狂暴姿态,且目标为敌对,则对目标施放拦截。
简单讲,战姿放冲锋,防姿放阻扰,狂姿放拦截,而在战斗中且不处于狂姿,则切换为狂姿。
980216:一键换盾,施放法术反射、盾墙
#showtooltip 法术反射
/停止施法
/装备盾牌名称
/施放[stance:3]防御姿态;[equipped:盾牌]法术反射
一键换装并切换至防御姿态,第二下施放法术反射,通常用在玩家对战时。
#showtooltip 盾墙
/停止施法
/装备盾牌名称
/施放[nostance:2]防御姿态;[equipped:盾牌]盾墙
与法术反射相同,通常用在玩家对战,以及狂战仇恨过量被殴的时候。
上面是双持狂战专用,由于本来就是双持,不用更换主手武器,至于拿双手武器的武战则必须先将双手武器换下才能装上盾牌,巨集如后:
#showtooltip 法术反射
/停止施法
/装备栏位16 单手武器名称
/装备栏位17 盾牌名称
/施放[equipped:盾牌]法术反射
#showtooltip 盾墙
/停止施法
/装备栏位16 单手武器名称
/装备栏位17 盾牌名称
/施放[nostance:2]防御姿态;[equipped:盾牌]盾墙
后面是依天赋合并版。
#showtooltip 法术反射
/停止施法
/装备栏位[spec: 2 ]16 单手武器名称
/装备栏位17 盾牌名称
/施放[stance:3]防御姿态;[equipped:盾牌]法术反射
#showtooltip 盾墙
/停止施法
/装备栏位[spec: 2 ]16 单手武器名称
/装备栏位17 盾牌名称
/施放[nostance:2]防御姿态;[equipped:盾牌]盾墙
当中的「spec:2」请修改为你武器天赋的编号,「1」为主天赋,「2」为副天赋(小弟为主狂副武),在武器天赋的情形下,会先装备双手武器才换盾,否则直接换盾。盾墙部份会先切换到防御姿态,按第二下才施放盾墙。法术反射部份,若在狂姿则切换为防姿,按第二下才施放,若不在狂姿则直接施放。
980216:缴械
#showtooltip 缴械
/施放[stance:2]缴械;防御姿态
一键切换至防御姿态,第二下施放缴械。
980226:热血沸腾触发猛击
/施放猛击
/停止施法
狂战专用,第一行施放猛击,第二行中断施法。啥意思咧?就是避免没触发热血沸腾的时候按下猛击,浪费唱法时间。如果有触发热血沸腾,则猛击变成瞬发,「/stopcasting」不会造成任何影响,如果没有触发热血沸腾,猛击需要唱法,则立刻打断。但这个方法实战上可能会因为延迟以及各种问题,而无法顺利停止猛击的施放,还连带会打断英打、顺劈等「下一次近战攻击施放」的技能,极不建议使用。(目前版本战士没有「下一次近战攻击施放」这类东西。)
980904:换盾、盾击断法
#showtooltip盾击
/停止施法
/装备栏位16 单手武器名称
/装备栏位17 盾牌名称
/施放[@mouseover,harm,nodead][@focus,harm][]盾击
武战专用,有游标对象则优先对游标对象施放盾击,否则对专注目标施放盾击,否则对目前目标施放盾击。
980904:换狂姿、拳击断法
#showtooltip 拳击
/停止施法
/施放[nostance:3]狂暴姿态;[@mouseover,harm,nodead][@focus,harm][]拳击
同样是武战专用,与前面的盾击可自行取舍。按第一下切换狂姿,第二下拳击。优先度同样是游标对象、专注目标、目标。
圣骑士
980306:祝福合一
#showtooltip
/施放[mod:alt,btn:2]强效力量祝福;[mod:alt]力量祝福;[mod:ctrl,btn:2]强效智慧祝福;[mod:ctrl]智慧祝福;[mod:shift ,btn:2]强效王者祝福;[mod:shift]王者祝福;[btn:2]强效庇护祝福;庇护祝福
Alt:力量祝福
Ctrl:智慧祝福
Shift:王者祝福
无辅助键:庇护祝福
左键为单体祝福,右键为强效祝福。
可自行调整按键判断或技能名称以符合自己的习惯。
目前版本祝福简化,应自行修改以符合需求。
980326:圣盾炉石
/连续施法reset=12 圣盾术,炉石
圣骑士的招牌巨集,第一下圣盾,第二下炉石。
980728:圣盾、神性牺牲
/连续施法reset=combat/target/10圣盾术,神性牺牲
第一下放圣盾,第二下放神性牺牲。重置条件只是意思意思,因为这几个技能的冷却时间都不算短,刻意去写准确的重制条件并没有意义。
980728:圣佑、牺牲圣御
/施放圣佑术
/施放[@mouseover,help][@focus,help][help]牺牲圣御
施放圣佑术,而后:
若游标对象为友好,对游标对象施放牺牲圣御。
否则,若专注目标为友好,对专注目标施放牺牲圣御。
否则,若目标为友好,对目标施放牺牲圣御。
死亡骑士
980324:永恒之眼抓力量火花
/清除目标
/选定指定目标力量火花
/跑if(UnitExists("target"))then SetRaidTargetIcon("target", 8)end;
/施放[harm]死亡之握
/施放[harm]冰链术
/选定指定目标玛里苟斯
范围内有火花则死握冰链,并上骷髅图标,没有则不执行这部份。
然后选定目标为玛狗。
跟网路上流通的抓火花巨集不同,此巨集并无使用到专注目标(focus),不会与其他使用专注目标的巨集冲突。
盗贼
980403:一键涂毒
/使用[mod:alt] ALT物品名称 ;[mod:ctrl] CTRL物品名称 ;[mod:shift] SHIFT物品名称 ; 无辅助键物品名称
/使用[btn:3]18;[btn:2]17;16
第一行:ALT、CTRL、SHIFT等物品,请自行依习惯填入毒药名称。
第二行:中键涂远程,右键涂副手,左键涂主手。
德鲁依
待补充……
萨满
待补充……
猎人
980223:强化追踪
/跑local t=UnitCreatureType("target");if(t=="不死族")then CastSpellByName("追踪不死生物") else CastSpellByName("追踪"..t) end; 若目标为不死族,则施放追踪不死生物,否则施放「追踪XX」,「XX」为单位类型。用上了已被封锁的CastSpellByName……不知道为啥可以用。= =
980920:喂食宠物、复活宠物、召唤宠物、治疗宠物合一
/施放[btn:2]喂养宠物;[@pet,dead]复活宠物;[nopet]召唤宠物;治疗宠物
/使用[btn:2] 食物名称
右键喂食,宠物死亡时复活,宠物不存在时召唤,其余状况治疗。
/施放[btn:2,pet]喂养宠物;[@pet,dead]复活宠物;[nopet]召唤宠物;治疗宠物
/关闭巨集[nobtn:2]
/使用[pet: 宠物一类型 ] 宠物一食物名称 ;[pet: 宠物二类型 ] 宠物二食物名称 ;[pet: 宠物三类型 ] 宠物三食物名称
多宠多食物版本,比如可以让龙鹰吃甲食物,让豹吃乙食物等等,只要255字塞得下,可以自行添加。
990618:判断宠物生死 /施放[@pet,dead];[pet] 技能名称 本来不太确定该放在通用区还是职业区……不过想想其他职业即便有宠物,似乎也不太有需要判断宠物生死,顶多判断是否存在就好,因此把这归到猎人区了。 宠物死亡时不做任何动作,宠物不存在时也不做任何动作,宠物存在且生存时则施放技能。会用到两个判断式是因为没有判断宠物生死的条件,只能先设对象单位为宠物,再判断对象单位生死,而如此会同时影响技能施放对象。
1000108:误导
/施放 [@mouseover,help,nodead] [@focus,help,nodead][@pet]误导
施放顺序:游标对象>专注目标>宠物,若不习惯游标对象,把红字部分删除即可。