宏命令里常用的函数有 - by elecass - 1.发送消息 1.1 SendChatMessage("message","system","language","channel") 作用:发送一条聊天消息 参数: "message":要发送的消息 "system":聊天消息想要发送的类型,省略时为"SAY",可使用: "SAY":说 "WHISPER":密语,必须在参数"channel"中指明密语对象的名字,可配合函数UnitName("unit")使用 "CHANNEL":频道,必须在参数"channel"中指明频道的编号,省略时为”综合” "GUILD":工会 "PARTY":小队 "RAID":组团 "YELL":大喊 "language":使用的语言,若无参数"channel"时可省略。 常用:”Common”, “Orcish”,在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 UseContainerItem(bag,slot) 作用:鼠标右击,参数bag指定的背包中、参数slot指定的格子 6.4 CursorHasItem() 作用:判断指针当前是否持有物品 6.5 OffhandHasWeapon() 作用:判断副手是否装备了物品 6.6 AutoEquipCursorItem(); 作用:自动装备指针当前持有的物品 6.7 DeleteCursorItem() 作用:摧毁指针当前持有的物品 6.8 GetContainerItemLink(bag,slot) 作用:返回参数bag指定的背包中、参数slot指定格子的物品链接 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.运动 7.1 MoveForwardStart() 作用:向前移动。仅能由函数MoveForwardStop()停止。 7.2 MoveForwardStop() 作用:停止向前移动 7.3 MoveBackwardStart() 作用:向后移动 7.4 MoveBackwardStop() 作用:停止向后移动 7.5 StrafeLeftStart() 作用:向左移动 7.6 StrafeLeftStop() 作用:停止向左移动 7.7 StrafeRightStart() 作用:向右移动 7.8 StrafeRightStop() 作用:停止向右移动 7.9 TurnLeftStart() 作用:向左转动 7.10 TurnLeftStop() 作用:停止向左转动 7.11 TurnRightStart() 作用:向右转动 7.12 TurnRightStop() 作用:停止向右转动 7.13 ToggleAutoRun() 作用:开启/关闭自动跑步状态 7.14 Jump() 作用:跳 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”指定单位的性别 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指定位置的法术 11.3 GetSpellCooldown(spellID,spellbookTabNum) 作用:返回指定法术的冷却信息 返回值:返回2个值:冷却开始的时间、冷却周期;若无冷却,均返回0 11.4 SpellIsTargeting() 作用:判断是否有法术正在施放并等待选择目标 11.5 SpellCanTargetUnit("unit") 作用:判断正在等待选择目标的法术能否向参数”unit”指定的单位施放 11.6 SpellTargetUnit("unit") 作用:向参数”unit”指定的单位施放正在等待选择目标的法术 11.7 SpellStopCasting() 作用:停止当前的施法 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 GetActionCooldown(ActionSlot) 作用:返回指定动作的冷却信息 返回值:返回2个值:冷却开始的时间、冷却周期;若无冷却,均返回0 12.4 GetActionCount(ActionSlot) 作用:返回指定动作(绷带、药水等)的可用数量 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() 作用:退出 背包讲解: [4][3][2][1][0]] 背包的排序 6格包的格子编号如下: _____[1][2] [3][4][5][6] 16格包的格子编号如下: [ 1][ 2][ 3][ 4] [ 5][ 6][ 7][ 8] [ 9][10][11][12] [13][14][15][16] 其他格数以此类推。 [align=right][color=#000066][此贴子已经被作者于2005-11-6 12:23:57编辑过][/color][/align] | Laola 2005-11-06 11:53:42 0樓 |
1.人物信息栏中的武器互换 宏为:/script PickupInventoryItem(16);PickupInventoryItem(17) 讲解:本宏是对于手上两把武器的互换.其中的(16)为主手,(17)为副手 如:主手是匕首 副手是剑(未用之前) 主首为剑 副手为匕首(使用本宏) 2.(前提:你的手上是双剑) 切换主手武器 宏:/script if ( not CursorHasItem())then PickupContainerItem(mainhandBag,mainhandBagSlot); PickupInventoryItem(16); PickupContainerItem(mainhandBag,mainhandBagSlot);end 讲解:这是在你想换掉主手中的剑而用匕首的宏(本人最爱,双剑练级 匕首吗当然是荣誉杀敌) 例子:首先你要先选择你背包中,最好是一个不用的格子比如第4个背包中的第1格,这样把(mainhandBag,mainhandBagSlot)这宏内容改为(4;1) 在本宏出现两个上述内容都改为(4;1)其他原封不动的打下来(注意:本宏中有一些内容之间缝隙大那是空格) [align=right][color=#000066][此贴子已经被作者于2005-11-6 12:22:43编辑过][/color][/align] | Laola 2005-11-06 12:20:08 1樓 |
1.双手武器 换到(主手武器+盾) 宏:/script PickupContainerItem(MainhandBag,MainhandBagSlot) /script PickupInventoryItem(16) /script PickupContainerItem(TwohandsBag,TwohandsBagSlot) /script PickupContainerItem(OffhandBag,OffhandBagSlot) /script PickupInventoryItem(17) 讲解:假如你想把双手武器放在第4个包的第1个格子就把(TwohandsBag,TwohandsBagSlot)改为(4,1) 这样,你的主手武器放在第4个包的第2个格子就把(MainhandBag,MainhandBagSlot)改为(4,2) 盾嘛,你就把它放在第4个包的第3格子就把(OffhandBag,OffhandBagSlot)改为(4,3)就行了 以上操作最好按我告诉你的来做,剩下的其他内容都原封不动的照打下来(注意!!空隙大的地方是空格) 2.(主手武器+盾) 换到 双手武器 宏:/script PickupInventoryItem(17) /script PickupContainerItem(OffhandBag,OffhandBagSlot) /script PickupContainerItem(TwohandsBag,TwohandsBagSlot) /script PickupInventoryItem(16) /script PickupContainerItem(MainhandBag,MainhandBagSlot) 讲解:关于包和格子的位置数要和上面的一样[双手武器是(4,1) 主手武器是(4,2) 盾是(4,3)] 这两个是一个整体要互相使用,互相配合. | Laola 2005-11-06 12:23:14 2樓 |
再说说宏。常用的其他帖子也有说,我也简单说几个。 1.吃面包,假如放在自己主包裹(这个叫法可能不专业,就是一出生带的那个)的第1个位置(从上到下,从左到右数) /script UseContainerItem(0,1) ( 0表示主包裹,2表示第2个位置) 2.绷带 /script TargetUnit(player) /script UseContainerItem(0,2) (类似吃面包) 3.跟随跑(本人比较懒,能跟就跟@@) /script ToggleAutoRun() (万一没人可跟,只好自己跑:-( ) /script TargetNearestFriend() /follow 4.偷袭。之所以把偷袭做成宏,是因为经常出现妖怪跟队友杀成一片,点不到怪,或者自己想偷袭的怪跑远了,只好换一个。同理可以用于其它技能。 /script ClearTarget() /script TargetNearestEnemy() /施放 偷袭 5.还击。巨好的一个技能,但是要招架了对方攻击才能用,实际打起来哪能注意过来?用宏解决这个问题。很简单: /施放 还击 /施放 邪恶攻击x x 这是个虽然笨但很有效的办法,每次邪恶攻击之前先用还击。如果不行(并没有招架对方)会给你错误提示,不会影响你的邪恶攻击施放。同样的道理可以用于背刺,副本中经常会在怪屁股后面打。这个宏我没试过,因为还没+到还击,呵呵,见笑。 6.其他常用宏 /slap (扇耳光,当别人对你做粗鲁手势的时候,PVE服务器常用) /观察 (看看别人装备:) ) | Laola 2005-11-06 12:30:54 3樓 |
好帖,顶。 | liuzi 2005-11-06 13:59:53 4樓 |
狂顶啊~精华~ | 花声月影 2005-11-07 09:12:47 5樓 |