当前位置:首页>>攻略文章>>正文
[战士]分享几个宏,pvp和pve都有用,包括界面调整,技能监视和打断
2014-06-14 18:11:05 作者:安瑟尼七号 来源:NGA 浏览次数:0
摘要:自己默默的收集和一些宏,用来调整自己的界面,所有使用的宏都是在网上收集并自己稍做修改的。

本人是一个低端的小战士,一直以来默默的热爱PVP,一直对插件无爱,没有使用过插件。
自己默默的收集和一些宏,用来调整自己的界面,所有使用的宏都是在网上收集并自己稍做修改的。





\

这个是我的常驻界面。


1.首先是没有显示出来技能cd显示宏,这个就是在NGA抄的。


大多数地方都有:

/run cs=20;ps=10;ctp="CENTER"ptp="BOTTOMRIGHT"cp=5;ct=UNIT_NAME_FONT;crt=2;cDB={}action={}ccf=CreateFrame;gac=GetActionCooldown;ol="OUTLINE"cpe="PLAYER_ENTERING_WORLD"cau="ACTIONBAR_UPDATE_COOLDOWN"co="OnUpdate"

/run function rt(f)f.e=nil f.t:SetText("")f:SetScript(co,nil)end function sf(f,v)f.t:SetFont(ct,f.s*v,ol)end function acv(b)local x=b.cooldown x.a=b.action action[x]=x end function scv(p,f,po,s)if(s>1)then f.t:SetPoint(po,p)end f.s=s;end

/run function sr(f,e)if(e>60)then sf(f,0.7)if(f.s==cs)then return"%d:%02d",e,e else return"%dm",e+60,e end elseif(e>=cp)then sf(f,1)f.t:SetTextColor(1,1,0,1)return"%d",e elseif(e>0)then sf(f,0.9)f.t:SetTextColor(1,0,0,1)return"%.1f",e else return end end

/run function suc(f)if not f.e then f.e=1;f:SetScript(co,function(s,e)f.c=f.c+e;local fo,v1,v2=sr(f,f.r-f.c)if not fo then rt(f)elseif not v2 then f.t:SetFormattedText(fo,v1)else f.t:SetTextColor(1,1,1,1)f.t:SetFormattedText(fo,v1/60,v2%60)end end)end end

/run function scs(p,f)if(p:GetSize()<35)then scv(p,f,ptp,ps)else scv(p,f,ctp,cs)end end function gict(f)local c=ccf("Frame",nil,f)c:SetFrameLevel(f:GetFrameLevel()+5)c.t=c:CreateFontString(nil,"OVERLAY")c.t:SetAllPoints(c)scs(f:GetParent(),c)return c;end

/run function gct(f)if not cDB[f]then local c=gict(f)c:SetSize(c.s*crt,c.s*crt)sf(c,1)cDB[f]=c;end return cDB[f]end function cvf(f,s,d)local c=gct(f)if(s and d)then c.b=s;c.d=d;if(s>0 and d>1.5)then c.c=0;c.r=d-(GetTime()-s);suc(c)else rt(c)end end end

/run function cvc(DB)for c in pairs(DB)do if c.a then local s,d=gac(c.a)cvf(c,s,d)end end end function pcv(_,e)if e==cau then cvc(action)else cvc(cDB)end end for _,b in pairs(ActionBarButtonEventsFrame.frames)do acv(b)end

/run vc=ccf("Frame")vc:SetScript("OnEvent",pcv)vc:RegisterEvent(cpe)vc:RegisterEvent(cau)hooksecurefunc(getmetatable(ActionButton1Cooldown).__index,"SetCooldown",cvf)hooksecurefunc("SetActionUIButton",acv)

分8行分别复制在8个宏里就行了,没什么。

2.动作条移动
其实这个就是一个对界面框体进行移动,如果熟练掌握了移动的话,你基本可以实现市面上所有的各种动作条插件的排布方式。
我个人玩儿DK和战士,因为DK的符文条我也移动到了屏幕中间偏下所以习惯了把这个动作条移动到这个位置看技能输出。
我个人实用的这个移动右下方动作条的宏:
/script MultiBarBottomRightButton1:ClearAllPoints()
/script MultiBarBottomRightButton1:SetPoint("BOTTOMLEFT",MultiBarBottomLeftButton1,"center",350,250)
/script StanceButton1:ClearAllPoints()
位置大小以及究竟移动哪个都可以自己修改,每个动作条按照这个格式都可以改,那种三行动作条的形式有现成的,需要的我可以单独发给你,不过一样也是网上抄的。

3.怒气监视
其实更简单就是移动了怒气条的位置,我习惯不开数字,当然数字你也是可以自己移动的
/run PlayerFrameManaBar:ClearAllPoints()
/run PlayerFrameManaBar:SetPoint("CENTER", UIParent, "CENTER", 3, -91)
/run PlayerFrameManaBar:SetScale(2.45)
大小位置都可以自己移动。

4.拳击打断喊话
这个基本是为PVP准备的了,没什么技术含量,NGA抄的。
/cast 拳击
/run F=F or CreateFrame("frame")F:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")F:SetScript("OnEvent",function(_,_,_,a,_,_,b,_,_,_,c,_,_,_,d,_,_,e)if a:find"UPT" and b==UnitName("player") then SendChatMessage("打断["..c.."]的["..e.."]","say")end end)
正好254个字符-。-

还有一些简单的,比如隐藏快捷键:
/run local r={"MultiBarBottomLeft", "MultiBarBottomRight", "Action", "MultiBarLeft", "MultiBarRight"} for b=1,#r do for i=1,12 do _G[r[b].."Button"..i.."HotKey"]:SetAlpha(0) end end
比如将屏幕上方的红字错误信息透明度改成0
/run UIErrorsFrame:SetAlpha(0)

这样基本就构成了我的界面。至于使用不用说了吧0 0比较蠢 上线一个一个点一遍。我的动作条2就是这些东西,上线按顺序点一遍就可以了。
这样我就摆脱了所有插件。摆布了我喜欢的动作条形式,可以看技能CD,可以监视怒气,我这种低端战士也可以勉强竞技了。
要说为什么不用插件,主要就是懒。经常换电脑玩儿所以懒得每次弄配置(之前用过LUA,毕竟不是宏可以保存在号上)

最后多说几句,细心的朋友可能发现我是用MAC玩儿魔兽的。

mac玩儿魔兽最蛋疼的问题就是鼠标和键盘的延迟问题。我这里说下我的解决方案。
\\
使用一个叫Smoothmouse的软件,进入系统偏好设置里你可以按照我那样设置。这样你鼠标延迟的现象基本就解决了,至少不会满屏漂点不到人了。
键盘貌似按照我这样设置之后,技能的输入延迟已经降低很多了。
抱怨一句,mac下很多的算法和win不一样,所以玩儿游戏建议还是不要用mac了。



相关报道:

[关闭] [返回顶部]


  返回首页 | 最新资讯 | 资源下载 | 魔兽图片 | 单机文档 | 技术攻略 | 玩家视频
备案号:蜀ICP备2024062380号-1
免责声明:本网站为热爱怀旧WOW的玩家们建立的魔兽世界资料网站,仅供交流和学习使用,非盈利和商用.如有侵权之处,请联系我们,我们会在24小时内确认删除侵权内容,谢谢合作。
Copyright © 2024 - 2024 WOWAII.COM Corporation, All Rights Reserved

机器人国度