首页 |魔兽新闻 | |玩家攻略 | |精彩视频 | |玩家杂谈 | |相关下载 | |常见问题 | |赚钱心得 |
按标题 按内容
WOWZLP.COM


当前位置:魔兽世界资料片中文网>玩家攻略>文章内容

CWOW2.1.2宏命令精细讲解及应用实例

作者: 来源:
日期:2007-07-15

 第二篇:原来宏指令是这样分类的

到目前为止,我还没有发现网上有对2宏指令进行分类整理的帖子,这也是让很多宏自编者觉得困惑的主要原因之一。根据我自己的归纳和整理,将所有的2宏指令分成三大类,每一大类中再分几个小类。具体说明和列举如下:


第一大类:动作指令,即宏命令里“/”后面的指令,是最一般的用来执行动作的命令。这是一条可执行的宏命令的躯体,可以说是一个宏语句想要实现的意图。又可分为直接动作指令和条件动作指令两类。

1、直接动作指令:也就是编写后可直接执行某一动作的动作指令,可追加条件指令,但后面不用再接法术名称或物品名称。此类指令很简单,包括:
/startattack 开始攻击
/stopattack 停止攻击
/stopcasting 停止施放 (此动作指令后可追加某一法术名称,但实际意义不大,所以这里依然作为直接动作指令)
/stopmacro 停止喊话
/assist 协助
/focus 设置焦点目标
/clearfocus 清除焦点目标
/cleartarget 清除目标
/petattack 宠物攻击
/petfollow 宠物跟随
/petstay 宠物原地停留
/petpassive 宠物被动姿态
/petdefensive 宠物防御姿态
/petagressive 宠物主动姿态
/dismount 下马
这些都是直接动作指令,执行效果就是直接开始或终止某一动作或状态。后面均可追加条件指令,表示符合某一或某些条件时进行此动作。

2、条件动作指令:也就是需要接法术名称或者物品,并可依靠条件指令进行选择执行的一些动作指令。这类指令最常用到,也是使得宏多样化的基本指令。此类指令很常见,包括:
/cast 施放
/castrandom 随机施放
/castsequence 顺序施放
/cancelaura 取消BUFF
/cancelform 取消姿态
/equip 装备
/equipslot 装备到指定位置
/use 使用
/userandom 随机使用
/changeactionbar 切换动作条
/swapactionbar 顺序切换动作条
/petautocaston 宠物自动施放技能开
/petautocastoff 宠物自动施放技能关
/click 点击
这一类指令的共同特点就是后面必须追加某一法术,物品或者某一参数代码,当然也可以用条件指令来进行判断,表示符合某一或某些条件执行某一法术(使用某一物品或执行某一动作)。这类命令里有些需要使用参数代码,在最后我会给出常用的参数代码列表。


第二大类:条件指令,即宏命令里[]中间的部分,是否执行某一动作指令所依据的条件。这是一条可执行的宏命令的灵魂,它告诉系统宏的某一动作指令什么情况下是可行的,什么情况下是不可行的。这类指令又分成两类:状态条件指令和指针条件指令。

1、状态条件指令:顾名思义,就是指明某一状态作为动作执行条件的指令。这一条件指令是2宏里最有特点的一个指令群它使得宏的功能更加实用和多样。此类命令很多,包括:
help 目标友善
harm 目标敌对
exists 目标存在
dead 目标已死
stance:<X> 处于某个姿态
stealth 潜行状态
modifier:<X> <X>可以是shift/ctrl/alt,shift/ctrl/alt被按下状态
button:<X> <X>可以是1/2/……5/<系统定义按键>,用鼠标的某个按键点的宏
equipped:<X> <X>可以是某个物品种类/身上某个装备格/某物品的类型/或者子类型,装备此(类)物品
channeling:<X> <X>为某法术名,某法术正在引导中
actionbar:<X> <X>为1到6的某一个参数代码,指定的动作条页面已被显示
pet:<X> <X>可为宠物种类或指定宠物的名字,指定宠物存在
combat 处于战斗状态
mounted 骑乘状态
swimming 游泳状态
flying 飞行状态
indoors 在室内
outdoors 在户外
group:party/raid 正在一个小队/团队中
这些命令指明在某状态下,宏定义动作指令可施放。所有状态条件指令前面都可以加个“no”,表示相反的状态,比如nostealth表示非潜行状态,nodead表示没死。在宏语句中,此类指令都写在[]中间,前面交代过,可以用“,”或者“/”来分隔,表明选择条件指令之间的关系是“并且”还是“或者”。

2、指针条件指令:即表明动作指令所针对的对象。此条件指令很特殊,只有一个,就是target。其实与其说target是条件指令,不如说是指针指令。但是由于其应用在宏里的时候是写在[]之间的,所以把它归结在条件指令里,以方便记忆宏的书写格式。此指令格式为:
target=<X> <X>可以为player/target/pettarget/targettarget/<某人或宠物的名字>……,动作施放目标为玩家/当前目标/宠物目标/目标的目标/某人或宠物……
注意在此条件指令后有个“=”,这也是target指令的特殊标志。在使用target指令的语句里,不表示目标为某某的状态,而是表明此动作指令将向某某发出。
另外,最近开始流行多指针条件指令判定了,也就是为了追求战斗时的效率,用最快的方法来施放技能。最突出的一个条件指令就是target=mouseover。简单说明一下目前WOW可以实现的目标指针条件指令种类,常用的就不说了,不常用有focus,即焦点目标,这是个可以脱离选择而独立进行监视的目标,需要使用/focus动作指令或指定系统快捷键来完成设置。还有就是mouseover。target=mouseover意思就是将动作指令的指针指向鼠标停留目标上,此时你无需选中这个目标,只要鼠标停留在目标的身上,使其显示高亮就可以了。


第三大类:辅助指令,即用来辅助完善宏的功能的指令。常用的有两个:
#show 在宏图标上显示指定图标
#showtooltip 在宏图标上显示说明
这两条指令后面均可追加技能或者物品名,则在宏图标选择界面里选择了“?”图标的时候,会显示指定的图标和说明。关于“?”图标,在游戏升级补丁说明中有详细讲解,这里就不再赘述了。只说两点,一是这两条指令要和“?”配合使用才能发挥最大的作用,其次是#showtooltip指令一定要放在宏的最开头,否则会失效。另外多说一句,“#”后面有无空格均可。


三大类指令说完了,最后说说比较特殊的一个条件动作指令:
/castsequence 顺序施放
这个动作指令虽然被归入条件动作指令,但大部分条件指令都不适用于对其进行约束,因为此动作指令所要执行的内容其实是一个动作序列,每点击此宏一次,系统将按编写好的动作序列顺序施放法术。/castsequence指令本身有个专用的条件限定指令reset=<X>。意思是在<X>条件下,宏序列重置到最初状态。当<X>是数字的时候,则表示宏序列在<X>秒后重置。此命令初看时会觉得比较鸡肋,但其实如果用特定的方法去使用,则作用很大,效果很出人意料。后面将有例子可以参考。


共4页: 上一页 [1] 2 [3] [4] 下一页
本新闻及文章仅代表发表厂商及作者观点,不代表本站本身观点