LUACN论坛

 找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
热搜: YJWOW MagicStone BoL
查看: 11105|回复: 12

[教学]宏命令里常用的函数

[复制链接]
发表于 2017-6-22 20:50:10 | 显示全部楼层 |阅读模式
本帖最后由 cwendian 于 2017-6-22 21:13 编辑

1.发送消息

1.1 SendChatMessage("message","system","language","channel")
作用:发送一条聊天消息
参数:
"message":要发送的消息
"system":聊天消息想要发送的类型,可使用:
    "SAY":说
    "WHISPER":密语,必须在参数"channel"中指明密语对象的名字,可配合函数UnitName("unit")使用
    "CHANNEL":频道,必须在参数"channel"中指明频道的编号,省略时为”综合”
    "GUILD":工会
    "PARTY":小队
    "RAID":组团
    "YELL":大喊
"language":使用的语言,若无参数"channel"时可省略。
    在CWOW中可使用”通用语”、”兽人语”等。亦可指定WOW中使用的其它语言,准确的语言名可使用函数GetDefaultLanguage(“unit”)获得。
    参数"language"指定的语言仅对发送者生效,接受者将以其默认语言接收。

1.2 GetDefaultLanguage(“unit”)
作用:返回参数”unit”指定的单位所使用的默认语言


2.字符运算

2.1 strfind(“string”,”pattern”)
作用:在字符串”string”中寻找字符(串)”pattern”
返回值:若找到,返回2个值,开始位置、结束位置;若找不到,返回nil

2.2 format(“formatstring”,value,…,…)
作用:使用value,…,…提供的值,按照”formatstring”指定的格式,建立字符串
“formatstring”中常用的格式:
    %s:字符串
    %d:整数
    %f:浮点数

3.好友/屏蔽

3.1 AddFriend("name")
作用:将指定名字的玩家加入好友列表
参数:
  "name":玩家的名字,可使用函数UnitName("unit")获得

3.2 AddIgnore("name")
作用:将指定名字的玩家加入屏蔽列表

3.3 DelIgnore("name")
作用:将指定名字的玩家从屏蔽列表中删除

3.4 AddOrDelIgnore("name")
作用:切换指定名字的玩家的屏蔽状态


4.组队

4.1 InviteToParty("unit")
作用:邀请参数”unit”指定的单位加入小队

4.2 InviteByName("name")
作用:邀请指定名字的玩家加入小队

4.3 UninviteFromParty("unit")
作用:将参数”unit”指定的单位踢出小队

4.4 UninviteByName("name")
作用:将指定名字的玩家踢出小队

4.5 LeaveParty()
作用:离开小队

4.6 UnitInParty("unit")
作用:判断参数”unit”指定的单位是否和玩家在同一小队中

4.7 GetNumPartyMembers()
作用:返回除玩家外的队友数

4.8 GetNumRaidMembers()
作用:返回包括玩家在内的团友数;若未组团,返回0

4.9 GetPartyMember(N)
作用:返回指定号码的队友的名字
返回值:若该队友不存在,返回nil


5.地图位置

5.1 GetZoneText()
作用:返回地区名

5.2 GetSubZoneText()
作用:返回分区名;若玩家并未位于一分区内,返回空值(并非nil值)

5.3 GetMinimapZoneText()
作用:返回小地图上显示的区域名。若玩家位于一分区内,相当于函数GetSubZoneText();若玩家并未位于一分区内,相当于函数GetZoneText()

5.4 SetMapToCurrentZone()
作用:将世界地图设置到玩家所位于的地区

5.5 SetMapZoom(continent)
作用:将世界地图设置到参数continent指定的大陆
参数continent:
0:整个世界
1:卡里姆多
2:东部王国

5.6 GetPlayerMapPosition("unit")
作用:返回参数”unit”指定的单位在当前地图中所处的坐标
参数:
"unit":可使用”player”、”partyN”及”target”。”target”仅能用于友好单位。
返回值:若可用,返回2个值,X轴坐标、Y轴坐标,返回值位于0~1区间;否则,均返回0


6.物品

6.1 PickupContainerItem(bag,slot)
作用:鼠标左击,参数bag指定的背包中、参数slot指定的格子
参数:
bag:背包的编号,0~4,自右向左
  0:最右侧的背包(出生时自带的16格包)
  4:最左侧的背包(猎人的箭袋、子弹袋)
slot:背包格子的编号,1~16,自左向右,由上而下
  1:最上排最左侧格子
  2:最上排最左2格子

6.2 PickupInventoryItem(id)
作用:鼠标左击人物属性窗口中,参数id指定装备格子
参数:
id:装备格子的编号
  1:头
  2:颈
  3:肩
  4:衬衣
  5:胸
  6:腰带
  7:腿
  8:脚
  9:手腕
  10:手套
  11:手指1
  12:手指2
  13:饰品1
  14:饰品2
  15:背
  16:主手
  17:副手
  18:远程武器

6.3.1 UseContainerItem(bag,slot)
作用:鼠标右击,参数bag指定的背包中、参数slot指定的格子

6.3.2 UseInventoryItem(id)
作用:鼠标右击人物属性窗口中,参数id指定装备格子

6.4 CursorHasItem()
作用:判断指针当前是否持有物品

6.5 OffhandHasWeapon()
作用:判断副手是否装备了武器(盾不是武器)

6.6 AutoEquipCursorItem();
作用:自动装备指针当前持有的物品

6.7 DeleteCursorItem()
作用:摧毁指针当前持有的物品

6.8.1 GetContainerItemLink(bag,slot)
作用:返回参数bag指定的背包中、参数slot指定格子的物品链接

6.8.2 GetInventoryItemLink("unit",id)
作用:返回参数”unit”指定单位的、参数id指定装备格子的物品链接

6.9 GetContainerItemInfo(bag,slot)
作用:返回参数bag指定的背包中、参数slot指定格子的物品信息

6.10 IsBagOpen(bag)
作用:判断参数bag指定的背包是否打开

6.11 ToggleBag(bag)
作用:打开/关闭参数bag指定的背包

6.12 CloseBag(bag)
作用:关闭参数bag指定的背包

6.13 OpenBag(bag)
作用:打开参数bag指定的背包

6.14CloseAllBags()
作用:关闭所有的背包

6.15 OpenAllBags()
作用:打开/关闭所有的背包


7.运动

此部分现在是BLZ专用


8.目标选择

8.1 ClearTarget()
作用:清除选定的目标

8.2 TargetUnit("unit")
作用:选定参数”unit”指定的单位为当前目标

8.3 TargetByName("name")
作用:选定指定名字的玩家为当前目标

8.4 TargetLastEnemy()
作用:选定前次曾选定的敌人为当前目标

8.5 TargetLastTarget()
作用:选定前次曾选定的目标为当前目标

8.6.1 TargetNearestFriend()
作用:选定位置最近的友方单位为当前目标

8.6.2 TargetNearestPartyMember()
作用:选定位置最近的队友为当前目标

8.6.3 TargetNearestRaidMember()
作用:选定位置最近的团友为当前目标

8.7 TargetNearestEnemy()
作用:选定位置最近的敌人为当前目标
参数:TargetNearestEnemy(1):逆序选择

8.8 AssistUnit("unit")
作用:选定参数”unit”指定单位的当前目标为自身的当前目标

8.9 AssistByName("name")
作用:选定指定名字玩家的当前目标为自身的当前目标


9.目标性质状态

9.1 UnitAffectingCombat("unit")
作用:判断参数”unit”指定的单位是否处于战斗状态

9.2.1 UnitBuff("unit",index)
作用:返回参数”unit”指定单位上、参数index指定序号的Buff的信息
返回值:若该单位上不存在该序号的Buff,返回nil;若存在,返回该Buff的相关信息

9.2.2 UnitDebuff("unit",index)
作用:返回参数”unit”指定单位上、参数index指定序号的Debuff的信息

9.3 UnitExists("unit")
作用:判断参数”unit”指定的单位是否存在

9.4 UnitIsPlayer("unit")
作用:判断参数”unit”指定的单位是否是玩家

9.5.1 UnitIsUnit("unit","otherUnit")
作用:判断2个单位是否是同一单位

9.5.2 UnitIsEnemy("unit","otherUnit")
作用:判断2个单位是否敌对

9.5.3 UnitIsFriend("unit", "otherUnit")
作用:判断2个单位是否友好

9.6.1 UnitInParty("unit")
作用:判断参数”unit”指定的单位是否是队友

9.6.2 UnitInRaid ("unit")
作用:判断参数”unit”指定的单位是否是团友

9.7.1 UnitCanAttack("unit","otherUnit")
作用:判断参数”unit”指定的单位是否可以攻击参数"otherUnit"指定的单位

9.7.2 UnitCanAssist("unit","otherUnit")
作用:判断参数”unit”指定的单位是否可以支援参数"otherUnit"指定的单位

9.7.3 UnitCanCooperate("unit","otherUnit")
作用:判断参数”unit”指定的单位是否可以与参数"otherUnit"指定的单位合作

9.8 UnitName("unit")
作用:返回参数”unit”指定单位的名字
参数:
“unit”:指定的单位,可使用:
    "player":玩家自身
    "pet":玩家自身的宠物
    "party1","party2","party3","party4":1至4号队友
    "partypet1"~"partypet4":1至4号队友的宠物
    "raidN":N(1~40)号团友
    "raidpetN":N(1~40)号团友的宠物
    "target":当前选中的目标,可以将"target"做为后缀直接添加在所有”unit”类型之后

9.9 UnitClassification("unit")
作用:返回参数”unit”指定单位的分级(精英、稀有、普通)

9.10.1 UnitCreatureType("unit")
作用:返回参数”unit”指定单位的物种分类(野兽、……)

9.10.2 UnitCreatureFamily("unit")
作用:返回参数”unit”指定单位的物种(螃蟹、狼、熊、……)

9.11 UnitClass("unit")
作用:返回参数”unit”指定单位的职业(战、牧、法、……)

9.12.1 UnitFactionGroup("unit")
作用:返回参数”unit”指定单位所处的集团(联盟、部落)

9.12.2 UnitRace("unit")
作用:返回参数”unit”指定单位的种族(人类、兽人、……)

9.13 UnitSex
作用:返回参数”unit”指定单位的性别,1为未知,2为男性,3为女性

9.14 UnitLevel("unit")
作用:返回参数”unit”指定单位的等级
返回值:若等级未知(骷髅),返回-1

9.15.1 UnitMana("unit")
作用:返回参数”unit”指定单位的当前法力(能量、怒气)值
返回值:法力(能量、怒气)值的当前点数

9.15.2 UnitManaMax("unit")
作用:返回参数”unit”指定单位的最大法力(能量、怒气)值
返回值:法力(能量、怒气)值的最大点数

9.16.1 UnitHealth("unit")
作用:返回参数”unit”指定单位的当前生命值
返回值:返回生命值的当前点数;但对”target”,返回生命值的当前百分数(0~100)

9.16.2 UnitHealthMax("unit")
作用:返回参数”unit”指定单位的最大生命值
返回值:返回生命值的最大点数;但对”target”,返回100


10.攻击/跟随

10.1 AttackTarget()
作用:开启/关闭自动攻击状态

10.2 PetAttack()
作用:命令宠物攻击

10.3 FollowUnit("unit")
作用:跟随参数”unit”指定的单位

10.4 FollowByName("name")
作用:跟随指定名字的玩家


11.法术

11.1 CastSpellByName("spellname(Rank X)")
作用:施放指定名称的法术

11.2 CastSpell(spellID,"spellbookTabNum")
作用:施放参数spellbookTabNum指定的法术书标签中、参数spellID指定位置的法术
参数spellbookTabNum:"spell"或"pet"

11.3 GetSpellCooldown(spellID,spellbookTabNum)
作用:返回指定法术的冷却信息
返回值:返回2个值:冷却开始的时间、冷却周期;若无冷却,均返回0

11.4 SpellIsTargeting()
作用:判断是否有法术正在施放并等待选择目标

11.5 SpellCanTargetUnit("unit")
作用:判断正在等待选择目标的法术能否向参数”unit”指定的单位施放

11.6 SpellTargetUnit("unit")
作用:向参数”unit”指定的单位施放正在等待选择目标的法术

11.7 SpellStopCasting()
作用:停止当前的施法

11.8 CastShapeshiftForm(index)
作用:切换到参数index指定的形态/姿态(职业相关)
德鲁依
1 = 熊形态
2 = 水中形态
3 = 猫形态
4 = 旅行形态
盗贼
1 = 潜行
战士
1 = 战斗姿态
2 = 防御姿态
3 = 狂暴姿态

11.9 GetNumShapeshiftForms()
作用:返回可用的形态/姿态的数量


12.动作条和动作相关

12.1 ChangeActionBarPage()
作用:将动作条切换到系统全局变量CURRENT_ACTIONBAR_PAGE的设定值

12.2 UseAction(ActionSlot)
作用:执行与参数ActionSlot指定的动作槽相关联的动作
参数ActionSlot:1~72,第1动作条的第1格为1、第12格为12,第2动作条的第1格为13、第12格为24,……,第6动作条的第1格为61、第12格为72。第3动作条是右侧动作条,第4动作条是右2动作条,第5动作条是底部右侧动作条,第6动作条是底部左侧动作条。

12.3 GetActionCount(ActionSlot)
作用:返回指定动作(绷带、药水等)的可用数量

12.4 GetActionCooldown(ActionSlot)
作用:返回指定动作的冷却信息
返回值:返回2个值:冷却开始的时间、冷却周期;若无冷却,均返回0

12.5 IsUsableAction(ActionSlot)
作用:判断指定动作是否可用
返回值:返回2个值:是否可用——若当前可用(不包括冷却和距离判断)则返回1,否则返回nil;法力不足——若指定动作当前不可用的原因是法力/能量/怒气不足则返回1,否则返回nil。

12.6 IsActionInRange(ActionSlot)
作用:判断指定动作是否在可用距离内
返回值:无动作或无目标时返回nil;超出可用距离时返回0;在可用距离内返回1。注意若距离对该动作无效或不能对选定的目标施法时总是返回1。


13.宠物

13.1 PetAttack()
作用:宠物攻击

13.2 PetFollow()
作用:宠物跟随

13.3 PetWait()
作用:宠物等待

13.4 PetDismiss()
作用:宠物解散

13.5 CastPetAction(PetActionID)
作用:施放参数PetActionID指定序号的宠物技能

13.6 GetPetActionCooldown(PetActionID)
作用:返回指定宠物技能的冷却信息
返回值:返回2个值:冷却开始的时间、冷却周期;若无冷却,均返回0

13.7 PetAggressiveMode()
作用:将宠物设为好斗模式

13.8 PetDefensiveMode()
作用:将宠物设为防御模式

13.9 PetPassiveMode()
作用:将宠物设为被动模式


14.其它

14.1 GetTime()
作用:返回当前的游戏内部时间,单位秒

14.2 random(lower,upper)
作用:返回随机数
返回值:随机数。无参数时位于[0,1)区间;提供单个参数n时,返回值位于[1,n]区间;提供两个参数lower、upper时,返回值位于[lower,upper]区间

14.3 CloseMerchant()
作用:关闭商人窗口

14.4 GetComboPoints()
作用:返回连击点数

14.5 Logout()
作用:登出

14.6 Quit()
作用:退出

14.7 CancelPlayerBuff(i)
作用:取消指定buff
回复

使用道具 举报

 楼主| 发表于 2017-6-22 21:12:58 | 显示全部楼层
本帖最后由 cwendian 于 2017-6-22 21:14 编辑

留用
回复 支持 反对

使用道具 举报

发表于 2018-2-19 18:16:44 | 显示全部楼层
师傅,新年快乐,过完年请教你,还请不吝赐教
回复 支持 反对

使用道具 举报

发表于 2018-11-9 17:07:35 | 显示全部楼层
貌似非常厉害的样子 学习中....
回复 支持 反对

使用道具 举报

发表于 2018-11-24 18:51:59 | 显示全部楼层
强烈支持强烈支持强烈支持
回复 支持 反对

使用道具 举报

发表于 2019-10-18 11:01:11 | 显示全部楼层
哪些有用呀 有PVP的命令么 一键秒杀
回复 支持 反对

使用道具 举报

发表于 2019-12-18 10:32:25 | 显示全部楼层
日常瞻仰, 还签到2天就可以拿到188, 只要188, 绚丽查件带回家
回复 支持 反对

使用道具 举报

发表于 2022-9-9 22:38:26 | 显示全部楼层
学到了,正好最近用超级宏~感谢分享~
回复 支持 反对

使用道具 举报

发表于 2023-2-2 15:27:42 | 显示全部楼层

这个不错诶。感谢分享。就是学不会。
回复 支持 反对

使用道具 举报

发表于 2023-8-10 17:01:24 | 显示全部楼层
好帖,学习了,感谢分享啊
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

小黑屋|手机版|Archiver|LUACN论坛

GMT+8, 2024-3-28 10:06 PM , Processed in 0.115000 second(s), 33 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表