字号:

分享怀旧服可用的宏 打断喊话变羊喊话等

时间:2019-12-29 21:42 作者:1q2w3e400 手机订阅 参与评论(0) 【投稿】
文 章
摘 要
分享一些怀旧服可用的宏 打断喊话变羊喊话等

一、基本宏

战场出场提醒

/脚本 CreateFrame("Frame","CC")CC:RegisterEvent("UPDATE_BATTLEFIELD_STATUS")CC:SetScript("OnEvent",function(_,_,c)if"confirm"==GetBattlefieldStatus(c)then SendChatMessage("[自动提醒]战场可以进啦!!", "WHISPER", nil, UnitName("player"))end end)message("出场提醒开启")

每次上线的时候点击一下,等战场出的时候会自动给自己发一条密语,同时魔兽的窗口会闪烁。这个宏适合不喜欢用插件,但又希望收到战场进场通知的人,如果有条件的话,还是推荐大家把 battleInfo 插件给装一下,自带提醒功能,很强大。

冰箱喊话

#show 寒冰屏障

/stopcasting

/施放 !寒冰屏障

/run local d,z=UnitHealth("player"),UnitHealthMax("player")if AuraUtil.FindAuraByName("寒冰屏障","player")=="寒冰屏障"then SendChatMessage("我已冰箱!!剩余血量:"..d.." ( "..math.modf(d*100/z).."% ) 请注意治疗!!")end

停止当前施法并施放冰箱,再按一次会喊话:我已冰箱,当前剩余生命值XX ,请注意治疗。按一次喊一次,重复按不会取消冰箱。

技能施放密语

/脚本 U="UNIT_SPELLCAST_S"CreateFrame("frame","Y")R=Y.RegisterEvent;R(Y,U.."ENT")R(Y,U.."UCCEEDED")Y:SetScript("OnEvent",function(_,_,a,b,c,d)if d then n=b end;m=a=="player"and GetSpellInfo(c)=="保护祝福"and SendChatMessage("已给你保护","WHISPER",nil,n)end)

/施放 保护祝福

技能施放成功之后密语目标,此处以 保护祝福 为例,可以根据需要替换成其它技能,如 能量灌注、激活什么的。

查看荣誉信息

/script local B=5000 a,b,c,d=GetPVPLastWeekStats()P=(math.floor(GetPVPRankProgress()*B*2))/100 W=UnitPVPRank("player")-4 N=(W-2)*B+B*P/100 Q=(W-1)*B-N*0.8 SendChatMessage(("上周击杀%s 荣誉%s 排名%s **等级%s 经验%s 经验条%s%% 下周需%s经验升级"):format(a,c,d,W,N,P,Q),"emote")

查看目标的**(包括敌方)

/run if(UnitPlayerControlled("target")) then name=UnitName("target")a=UnitPVPRank("target")if a==0 then c="无";b=0 else c,b=GetPVPRankInfo(a,"target")end SendChatMessage(" <"..name.."> "..c.." **等级"..b,"emote")end

自动跟随宏:

/cleartarget

/tar 目标名字

/F

这个宏会清除当前目标,然后选定指定目标,并自动跟随。如果想直接跟随不选定目标的话直接/f 目标名字就行了:

/F 目标名字

如果想取消跟随的话可以这样:

/F player

一键标记宏

/脚本 SR=SetRaidTarget;TG="target"

/cleartarget

/tar 目标1

/script SR(TG,1)

/cleartarget

/tar 目标2

/script SR(TG,2)

/cleartarget

/tar 目标3

/script SR(TG,3)

/cleartarget

/tar 目标4

/script SR(TG,4)

/cleartarget

/tar 目标5

/script SR(TG,5)

可以一次性标记多个目标,把上面的目标替换成角色名就行了,SR(TG,1) 中不同的数字代表不同的标记,范围是0-8,具体含义可以自己试一下。

打1自动进组

/脚本 CreateFrame("frame","Z")Z:RegisterEvent("CHAT_MSG_WHISPER")X=not X and function(_,_,a,b)m=a:find("^1*$")and InviteUnit(b)ConvertToRaid()end or nil Z:SetScript("OnEvent",X)message(X and"自动组队开"or"自动组队关",1)

这个宏可以实现密语打1自动进组,只要有人打1就可以自动转团并邀请进组,如果你想更改关键字,把a:find("^1*$")中的 1 改成其它的就行了。这个宏用了正则表达式,可以识别重复的内容,比如你打很多1111它也可以识别,但不会识别1234。如果你想改成精确匹配的话,把这一句改成 a=="1" 就行了。下面这个宏同理,不再赘述。

打1自动进组(公会版)

/脚本 CreateFrame("frame","Z")C="CHAT_MSG\_"R=Z.RegisterEvent;R(Z,C.."WHISPER")R(Z,C.."GUILD")X=not X and function(_,_,a,b)m=a:find("^1*$")and InviteUnit(b)ConvertToRaid()end or nil Z:SetScript("OnEvent",X)message(X and"自动组队开"or"自动组队关",1)

跟上面的宏差不多,只不过除了密语之外,在公会打1也可以自动进组。如果你想实现在其它频道打1进组的话也是可以的。需要说明的是,这两个宏都无法识别战网好友。

战场总场次

/run local b=GetBattlegroundInfo(1)SendChatMessage(b.." 当前总场次:"..GetNumBattlefields())

显示当前战场的总场次,可以粘贴在聊天框里,也可以做成宏。

追场宏

/脚本 CH=1

/脚本 local f=BattlefieldListScrollFrame local z,c=f:GetVerticalScrollRange(),GetNumBattlefields()for i=1,c do if CH==GetBattlefieldInstanceInfo(i)then print("总场次:"..i.."/"..c)f:SetVerticalScroll(z*i/(c-9))BattlefieldZone1:Click()end end

把 CH=1 中的 1 替换成你想要的场号,打开战场列表,点击宏就行了。这个宏适合不喜欢插件的朋友,有条件的话还是推荐大家把 battleInfo 插件装一下,追场什么的很方便。

加入17173玩家俱乐部,100%领《原神》月卡、《王者荣耀》888点券、《魔兽世界》T恤等周边好礼!
加入方式:微信关注“17173服务号”

热点推荐

游戏头条