王朝知道
分享
 
 
 

wow中骑士的宏怎么编辑

王朝知道·作者佚名  2012-07-26  
宽屏版  字体: |||超大  
 
分类: 游戏 >> 网易游戏 >> 魔兽世界
 
问题描述:

我的操作水平不好,我看别人都是点1个键,就能连续释放好几个技能,而且都是针对某个职业的,比如一个连续的技能对付战士:命令圣印→制裁→审判→公正圣印。 之类的能够把技能连续起来,使用很方便,谁能帮助我编辑最适合QS用的宏,谢谢,被选种后追加分数

参考答案:

给你引个帖:

[骑士刚强之道]关于骑士的'宏'汇总.献给NGA寻找骑士宏的朋友[已完成,望加精]

在老罗的秩序之源里面,我发现关于宏的部分太少.也许是NGA和猫扑的区别吧.刚玩骑士不久,这里尽我所能贴一些出来,希望斑竹能高亮,也希望老罗可以加入秩序之源里面.

7区祖鲁稀德<铁血>骑士keos

[请问如果TBC带判断的宏会被取消,那插件呢?如果TBC依然保持插件的判断功能,判断宏就依然可以工作,宏的本质是LUA脚本.姑且认为不能工作了,那更可以通过我的目录里面的第3扩展来实现一切功能]

目录:

1,入门级宏介绍,很轻易的以这个格式举一反三.

2,进阶级宏介绍,希望大家可以从里面学到这里没有的东西.

3,LUA脚本级宏扩展(准备放在2楼),感兴趣,以及渴望以宏致胜的骑士继续..

一点小要求

请关闭WOW自带的以及任何整合查件带的自我释法.

一点要提前说明的

动作分为软动作(soft)和硬动作(hard),软动作我是指没有动作行为的,如选择目标,说话等.软动作可以由任何事件(event)触发,包括:密语,进入/脱离战斗,受到伤害,受到治疗,进出副本等等.硬动作就是必须要由一个硬件事件(hardware event)触发的动作,释法,移动等都是.硬件事件仅仅包括操作计算机的人的动作.例如可以通过注册一个密语事件,让别人米你,成为你的目标,但不能给予其祝福.无公共CD的硬动作是可以和其他硬动作同时被一个硬件事件触发的;反之,一个硬件事件只能触发一个有CD的硬动作.

{入门级宏}

1,法术的自我释放,有2种方法:

/script CastSpellByName("清洁术",1) [加1参数的释法命令]

/script TargetUnit("player");CastSpellByName("清洁术");TargetLastUnit() [先选择自己为目标再释法,再切换到上一个目标]

(第一种略过了目标的切换是很好的方法)

2,SpellStopCasting()打断释法函数的骑士用法.

/script CastSpellByName("神恩术");SpellStopCasting();CastSpellByName("神圣震击") [防止被取散的必暴震击]

/script SpellStopCasting();CastSpellByName("圣盾术") [保证按无敌时没有其他任何动作]

3,RAID中治疗保护队友的语言通知:

/script CastSpellByName("圣光术");SendChatMessage("你正处于危险之中,正在为你吟唱顶级圣光术!", "WHISPER",GetDefaultLanguage("player"),UnitName("target")) [治疗并密语队友]

/script CastSpellByName("保护祝福")

/RA %t <<<<已给保护祝福! [团队通知给某人保护祝福]

{进阶级宏}

BLZ所提供的UI,API非常强大,可以判断很多种情况.判断由机器完成,是简化操作的一种手段.

1,要水宏:

/script if(UnitIsFriend("target","player") and UnitClass("target")=="法师") then local tf_un=UnitName("target");SendChatMessage(tf_un.."朋友你好,给点水嘛.谢谢!", "WHISPER",GetDefaultLanguage("player"),tf_un);end

[这个宏含有目标友好与职业判断,点的不是法师是发不出去的,可以避免闹笑话]

2,RAID一些宏:

骑士版5秒回蓝刷血:

/script if(flt==nil) then flt=0;else local nowTime=GetTime();if(flt<=0) then CastSpellByName("圣光闪现");fst=nowTime;end;flt=1.5+5+0.1-(nowTime-fst);end

[里面1.5+5+0.1为 吟唱时间+5秒回蓝+网络延迟]

BWL3号致死刷血:(仅仅是蓝不够的情况才会用到吧?)

/script for i=1,16 do if(UnitDebuff("targettarget",i)) then if(string.find(UnitDebuff("targettarget",i),"SavageBlow")) then TargetUnit("targettarget");CastSpellByName("圣光闪现");TargetLastTarget();end;end;end

[选定BOSS,只有在BOSS目标身上有致死DEBUFF的时候,才开始吟唱.里面SavageBlow为致死的图表名]

防止误干涩:

/script if(UnitClass("target")=="牧师" or UnitClass("target")=="圣骑士" or UnitClass("target")=="德鲁依") then CastSpellByName("神圣干涉");end

[只有当目标为3治疗职业时,才予以干涉]

只有在危机时刻使用圣疗:

/script if(UnitHealth("target")<2000) then CastSpellByName("圣疗术");SendChatMessage("对[%t]使用圣聊!");end

[只有当目标生命在2000以下才使用圣疗,当然2000的具体数字可以修改]

治疗OT自动给予保护:

/script if(UnitClass("targettarget")=="牧师" or UnitClass("targettarget")=="德鲁依") then TargetUnit("targettarget");SpellStopCasting();CastSpellByName("保护祝福");else CastSpellByName("圣光闪现");SpellTargetUnit("targettarget");end

[选定目标,治疗目标的目标,如果治疗OT则切换到治疗,释放保护]

根据目标职业给予力量/智慧祝福:

/script if(UnitClass("target")=="战士" or UnitClass("target")=="盗贼") then CastSpellByName("力量祝福");else CastSpellByName("智慧祝福");end

3,PVP相关(这里我将给予比较详细的介绍)

饰品和自我自由祝福:

/script if(HasFullControl()==nil) then UseInventoryItem(13);elseif(not IsShiftKeyDown()) then CastSpellByName("自由祝福",1);else CastSpellByName("自由祝福");end

[当无法自我控制的时候,使用上面一个饰品;可以自我控制的时候给自己自由祝福,按下SHIFT则仅仅给目标释放自由祝福]

HasFullControl()函数判断玩家是否可以自我控制,我的经验,只有恐惧和变形是标志为nil.这是一个可以把使用饰品和自我自由祝福结合起来的宏.

圣印和审判:

/script for i=1,16 do if(UnitBuff("player",i)) then if(string.find(UnitBuff("player",i),"ThunderBolt")) then CastSpellByName("审判");break;end;else CastSpellByName("正义圣印");break;end;end

[如果有正义圣印,则释放审判;如果没有则释放正义圣印]

搜索玩家人物的16个BUFF位,发现则审判,没有则添加圣印,跳出循环.其中ThunderBolt是正义圣印的图标名.其他几中图标名我列在下面.这是一个可以把圣印和审判结合到一个按键上的宏.

命令InnerRage

光明HealingAura

智慧RighteousnessAura

公正SealOfWrath

十字军HolySmite

自我清洁,可解才解:

/script for i=1,16 do if(UnitDebuff("player",i,1)) then CastSpellByName("清洁术",1);elseif(UnitDebuff("player",i)==nil) then CastSpellByName("清洁术");break;end;end

[当自己有可以驱散的DEBUFF,则自我清洁,如果没有,则仅仅释放清洁术]

也就是这个宏是自我优先清洁,当然可以把后面的清洁术改为其他动作.自我清洁设一个hotkey是很有必要的.

惩戒骑对抗MS/SM使用一级命令:

/script if(UnitClass("target")=="牧师" or UnitClass("target")=="萨满祭祀") then CastSpellByName(命令圣印(等级 1));else CastSpellByName(命令圣印);end

这样被驱散了,不会心痛.当然这个也可以做到上面的圣印审判宏里面.

对应圣印更换武器:

/script CastSpellByName("命令圣印");SpellStopCasting();UseAction(twohand_slot,0,1)

[这里使用了UseAction()这个函数,twohand_slot那里填入动作条代码,也需要把双手武器的图标移到对应的动作条上]

/script CastSpellByName("公正圣印");SpellStopCasting();UseAction(onehand_slot,0,1);UseAction(shield_slot,0,1)

[同上]

单双手互换:

/script if(IsEquippedAction(twohand_slot)) then UseAction(onehand_slot,0,1);UseAction(shield_slot,0,1);else UseAction(twohand_slot,0,1);end

[先使用IsEquippedAction()判断双手,也就是处于动作条位置的那把双手武器优先,同样需要你自己填入动作条编号]

动作条编号如下:

25-36 bar on right-side of screen, far right (top to bottom)右边

37-48 bar on right-side of screen, in one column (top to bottom)右2

49-60 lower right bar (left to right)右下

61-72 lower left bar (left to right)左下

------------------------------------------------------------------未完待续

暂时就写以上这么多,有不对的地方或者想得不周到的地方请大家指正.2楼我将于近期贴出关于通过UI来写LUA脚本,达到扩展自己宏的方法例子等.尽请关注...

关于详细的API和EVENT可以关注:

此网页不属于NGA网站,NGA不保证其安全性

继续访问 取消 不再提示我[ ]

{LUA脚本级宏扩展}

WOW的UI(用户接口user interface)也就是interface/Addons/目录下的插件.这些插件基本由3类文件构成:

.toc 这个是说明注释

.xml 这个是WOW所用的网页框架格式的文件,窗口,按钮,界面等都是在这个文件里面完成的

.lua 这个是脚本文件,脚本代码就在这里面,也是我下面将要说的,我们所利用的文件

扩展思路:

WOW里面的MACRO最多只能有255个字符,所以我们编辑比较大型的功能比较丰富的宏是不太现实的,但我们可以做到插件的.lua脚本里面去.写成一个函数.并在WOW里面直接调用这个函数,完成对宏的扩展.

例如:上述单双手武器互换的宏,我们可以做成这样一函数:

function change_weapon(twohand_slot,onehand_slot,shield_slot)

if(IsEquippedAction(twohand_slot)) then

UseAction(onehand_slot,0,1);

UseAction(shield_slot,0,1);

else

UseAction(twohand_slot,0,1);

end

end

把这个函数贴进,插件目录下面,某个插件的某个lua文件里面.我们就可以在WOW里面建一宏:

/script change_weapon(twohand_slot,onehand_slot,shield_slot)

来直接调用这个函数,在宏中填入相应的动作条代码,就可以实现同样的功能.

当然我们还是更愿意,自己做.toc和.xml文件来做一个我们自己的LUA函数库:

例如:我们分别建立这些文件(可以复制其他插件的文件,再予以更名,用记事本打开)

mymacro.toc

## Interface: 11200 --------------------------版本号

## Title:mymacro --------------------------名字

## Notes:我的功能函数库 ------------------注释,随便添加

mymacro.xml ----------------包含的XML文件的名字

mymacro.xml

<Ui xmlns=""

此网页不属于NGA网站,NGA不保证其安全性

继续访问 取消 不再提示我[

此网页不属于NGA网站,NGA不保证其安全性

继续访问 取消 不再提示我[

..\FrameXML\UI.xsd">

<Script file="mymacro.lua"/> -------------包含的LUA脚本文件的名字

<Frame name="mymacro"> -----------这个不可见窗体的名字

<Scripts>

<OnLoad>

</OnLoad>

<OnEvent>

</OnEvent> ------------以上4句和事件EVENT有关,是进入游戏加载或注册的内容,这里为空

</Scripts>

</Frame>

</Ui>

(由于系统自动把地址改为可点,如果要复制这里的请去掉地址2边的[]号)

还有一个文件,里面就放入函数了(LUA语法请参看:

此网页不属于NGA网站,NGA不保证其安全性

继续访问 取消 不再提示我[ ])

mymacro.lua

这里可以放入任何你编好的函数,并在进入游戏时加载,便可以在宏中进行调用.

这里限于篇幅只举一个例子:

十字军+审判+命令:

function seal_combo_cross_comm()

local pb_cr=seal_is_some_buff("player","HolySmite");

local pb_co=seal_is_some_buff("player","InnerRage");

local tdb=seal_is_some_debuff("target","HolySmite");

if(not tdb) then

if(not pb_cr) then

CastSpellByName("十字军圣印");

else

if(target_ok()) then

CastSpellByName("审判");

else

SendChatMessage("No Target!");

end

end

else

if(not pb_co) then

CastSpellByName("命令圣印");

else

if(target_ok()) then

CastSpellByName("审判");

else

SendChatMessage("No Target!");

end

end

end

end

这个函数里面包含几个子函数:

--判断目标身上是否有某一BUFF!111

function seal_is_some_buff(TargetOrPlayer,BuffTexture)

local buff_f=nil;

for buff_slot=1,16 do --通过BUFF标志,判断是否有对应BUFF!

if(UnitBuff(TargetOrPlayer,buff_slot)~=nil) then

if(string.find(UnitBuff(TargetOrPlayer,buff_slot),BuffTexture)) then

buff_f=1;break;

end

else

break;--无BUFF!

end

end

return buff_f;

end

--判断目标身上是否有某一DeBUFF!111

function seal_is_some_debuff(TargetOrPlayer,BuffTexture)

local buff_f=nil;

for buff_slot=1,16 do --通过BUFF标志,判断是否有对应BUFF!

if(UnitDebuff(TargetOrPlayer,buff_slot)~=nil) then

if(string.find(UnitDebuff(TargetOrPlayer,buff_slot),BuffTexture)) then

buff_f=1;break;

end

else

break;--无BUFF!

end

end

return buff_f;

end

--判断是否有可以被攻击的目标!104

function target_ok()

if(UnitExists("target") and (not UnitIsFriend("player","target"))) then

local un=UnitName("target")

return un;

else

return nil;

end

end

在WOW中只要调用主函数seal_combo_cross_comm()就可以实现.

------------------------------------------------------------

这部分内容就写到这里.如果大家需要帮助可以联系我.

游戏有不同的种玩法,思考是共同点.

感谢阅读这片帖子的朋友,感谢予以我支持的朋友.

此网页不属于NGA网站,NGA不保证其安全性

继续访问 取消 不再提示我[ ]

关于一键divine favor+holy light的宏

响应版主号召

我已经用了很久,还以为大家都有呢

/施放 神恩术

/script SpellStopCasting();

/施放 圣光术(等级 8)

/script if SpellIsTargeting() then

SpellTargetUnit("player") end;

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格&#8203;十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有