1、魔兽世界 API 魔 兽 世 界 全 局 函数 帐 号 游 戏 时 间 范 围 函 数 (Account PlayTime Limit Functions)此类 API 函数是专门为防沉迷系统而 设计的, 能 计 算 出 当 前 玩 家 游 戏 时 间 等 内 容 , 当 前 只 在 亚 洲 地 区 有 效 。 GetBillingTimeRested() - 返 回当前 帐户 已登 陆时 间。 PartialPlayTime() - 如果 用 户状态 为“ 疲劳 (tired ) ” 则返 回 1 :降 低经 验及 掉 落。 NoPlayTime() - 如 果用 户状 态为“ 不健 康的
2、(unhealthy ) ” 则返 回 1 :无 经验 及 掉落。 - 动作函数 (Action Functions) 这 些 函 数 对 动 作 按 钮 进 行 操 作 ( 通 常 玩 家 的动 作 有 可 能 通 过下 面 列 表 中 的 函数 执 行 ) 。 保护 界面 ActionButtonDown(id) - 按下指 定动 作按 钮 。 保护 界面 ActionButtonUp(id) - 释 放指 定动 作按钮 。 ActionHasRange(slot) - 检 测指定 动作 按钮 是否 受距 离限制 ( 是则 返回 1 ,否 则返回 nil) 。 界面 BonusAction
3、ButtonDown - 触发 指定 额外 动作 按 钮 ( 宠物 或仆 从) 。 界面 BonusActionButtonUp - 释 放指 定额 外动 作按 钮 ( 宠物 或仆 从) 。 保护 CameraOrSelectOrMoveStart() - 在 3D 界面开 始 “ 左键 单击“ 动作 。 (1.10 - 保护) 保护 CameraOrSelectOrMoveStop(stickyFlag) - 在 3D 界面 结束 “ 左键 单击“ 动 作。 (1.10 - 保护) ChangeActionBarPage() - 更改系 统动 作按 钮页 面为 系统变 量 CURRENT_A
4、CTIONBAR_PAGE 指 定页。 GetActionBarToggles() - 获 取系统 动作 条显 示状 况。 GetActionCooldown(slot) - 获取指 定动 作按 钮冷 却状 况。 GetActionCount(slot) - 获取 动作按 钮所 需物 品剩 余量 ( 绷带/毒药/ 等) , 无物 品或 不可用 时返 回 0 。 GetActionText(slot) - 获 取 动作按 钮文 本标 签 ( 宏, 等) ,不 存在 则返 回 nil 。 GetActionTexture(slot) - 获 取指定 动作 按钮 材质 路径 。 GetBonusBa
5、rOffset() - 检测 何种额 外动 作条 已显 示。 HasAction(slot) - 假如 指定 动作条 按钮 有技 能执 行, 则返回 1 ,其 他情 况返 回 nil 。 IsActionInRange(slot) - 测 试 技能是 否在 施展 距离 内 (1= 是, 0= 否, nil= 不可 用) 。 IsAttackAction(slot) - 技 能 为“攻 击” 动作 则返 回 1 ( 战斗中 闪光) , 其 他情 况 返回 nil 。 IsAutoRepeatAction(slot) - 技能可 自动 重复 时返 回 1 ,其他 情况 返回 nil 。 IsCur
6、rentAction(slot) - 技 能 动作正 在执 行时 返回 1 , 其他情 况返 回 nil 。 IsUsableAction(slot) - 技 能 可立即 执行 时返 回 1 , 其 他情况 返回 nil 。 IsConsumableAction(slot) - 技能有 施展 次数时 返回 1 ( 例 如 :施 法物 品) ,其 他情况 返 回 nil 。 IsEquippedAction(slot) - 必 须装备 才能 施展 的技 能返 回 1 ( 例如: 链接 到必 须装 备的物 品),其 他情况 返回 nil 。 PetHasActionBar() - 检 测玩 家宠物
7、 是否 有动 作条 。 PickupAction(slot) - 将 指定 动作按 钮的 技能 提取 并放 置于光 标上 。 PickupPetAction(slot) - 将 指定的 宠物 动作 按钮 的技 能提取 并放 置于 光标 上。 PlaceAction(slot) - 将 鼠标 上的技 能放 置于 指定 动作 按钮。 SetActionBarToggles(show1,show2,show3,show4, alwaysShow) - 设 置指 定系 统动 作条显 示。 - 1.12 版 本添 加 alwaysShow 。 保护 TurnOrActionStart() - 在 3D
8、界 面开 始 “ 右 键单 击“ 动 作。(1.10 - 保护) 保护 TurnOrActionStop() - 在 3D 界 面结 束 “ 右 键单 击“ 动 作。 (1.10 - 保护) 保护 UseAction(slot, checkCursor, onSelf) - 执行 绑 定到指 定 ID 的 动作 按钮 技能, 可定 向 玩家 ( 与 目标 无关) 。 - 行为函数 (Activity Functions) 这 个 部 分 的 函 数 会 引 发 玩 家 角色的动作( 未 在别 处 加 以 保 护, 非简单确认步骤) AcceptDuel() - 玩家 同意 接 受决斗 挑战.
9、保护 AttackTarget() - 攻 击 选定目 标. CancelDuel() - 拒 绝决 斗挑战. CancelLogout() CancelMeetingStoneRequest() - 将角 色从 集合 石队 列 中移除 ClearTutorials() ConfirmSummon() 保护 DescendStop() -增加于 2.1 Dismount() -增加于 2.0.3 FlagTutorial(“tutotial“) 保护 ForceLogout() ForceQuit() GetSummonConfirmAreaName() GetSummonConfirmSum
10、moner() GetSummonConfirmTimeLeft() Logout - 注销当 前玩 家角 色. Quit - 退出 应用 程序(游戏), 而非 LUA 脚本. RandomRoll(low, high) - 随 机产生 在两 个( 正整 数) 数值 闭区间 的整 数. 保护 SitStandOrDescendStart() - 切 换玩 家坐 下/ 站 立 姿势. 保护 StartDuel(“name“) - 向玩家 发出 决斗 邀请( 根 据 名字) TogglePVP() - 切换 PVP 状态 ToggleSheath() - 拔出/ 收 起 武器. UseSoulst
11、one() - 使 用激 活 的灵魂 石复 活自 己. - 插 件 函 数 (AddOn Functions)DisableAddOn(index or “ AddOnName“) - 禁 止 某 插 件 下 次载 入. DisableAllAddOns() - 禁止 所有插 件下 次被 载入 EnableAddOn(index or “AddOnName“) - 在下 次进 程开 启指定 插件. EnableAllAddOns() - 在 下次 进程开 启全 部插 件. GetAddOnDependencies(index or “AddOnName“) - 取得 插件依 赖列 表. Get
12、AddOnInfo(index or “AddOnName“) - 取得 插件 相 关信息. GetAddOnMetadata(index or “name“, “variable“) - 从插 件的 TOC 文件 中获 取标 签 内容( 值) 。 GetNumAddOns() - 取 得用 户插件 数量. IsAddOnLoaded(index or “AddOnName“) - 指定 插件 已 读取则 返回 true. IsAddOnLoadOnDemand(index or “AddOnName“) - 测试 插件是 否可 动态 载入. LoadAddOn(index or “AddOn
13、Name“) - 发出 动态 载入 插 件读取 请求. ResetDisabledAddOns() - - 竞技场函数(Arena Functions)ArenaTeamInviteByName(teamIndex, playerName) - Invites the specified player to the specified arena team. ArenaTeamLeave(teamIndex) - Leaves the specified arena team. ArenaTeamRoster(teamIndex) - Sends a request to the server
14、 to request the most recent information on a specific Arena Team that you are in. ArenaTeamUninviteByName(teamIndex, playerName) - Removes the specified played from the specified arena team. ArenaTeamDisband(teamIndex) - Disbands the arena team without any warning! Requires you to be the leader of t
15、he team. (Known to be implemented as of 2.1.3, but may have existed before). GetArenaCurrency() - Gets the amount of arena points a player currently has to spend. GetArenaTeam(teamIndex) - Returns information regarding the players arena team, nil if the player is not in the passed team GetArenaTeamR
16、osterInfo(teamIndex, playerIndex) - Returns information regarding a player from the specified team, this requires a call to ArenaTeamRoster you only need to do this when the player logins in, UI reloads will not effect the return. GetNumArenaTeamMembers(teamIndex, showOffline) - Gets the number of a
17、rena team members, this requires a call to ArenaTeamRoster you only need to do this when the player logins in, UI reloads will not effect the return. GetBattlefieldTeamInfo(index) - Gets info about a registered Arena Team at the end of an arena match. GetCurrentArenaSeason() - Gets the current Arena
18、 season. IsActiveBattlefieldArena() - Returns true if in an Arena Match, also Returns true for the second argument if its a registered match. IsArenaTeamCaptain(teamIndex) - Returns a value based on whether the player is the arena team captain. IsBattlefieldArena() - Returns true if the battlemaster
19、 youre talking to can queue you for arenas - 拍卖函数 (Auction Functions)CalculateAuctionDeposit(runTime) - 返回当 前 指 定 持 续 时 间拍 卖 物 品 的 堆 放信 息 (单位:分钟). CanSendAuctionQuery() - 拍卖行 搜索 按钮 可用 时返 回 1, 否 则为 nil. CancelAuction(index) - 取消 指定拍 卖 ( 在 物主 列表). ClickAuctionSellItemButton() - 将 当前 拣起 的 物品 放 到 拍卖 栏.
20、CloseAuctionHouse() - 关闭 ( 打 开的) 拍 卖窗 口. GetAuctionHouseDepositRate() - 返回当前开 启的拍卖 窗口内物品 含未显示 存 放比例 ( 百 分率) ( 可能 根据 CalculateAuctionDeposit). GetAuctionInvTypes(classIndex, subclassIndex) - 返 回物 品的子 类. GetAuctionItemClasses() - 返回拍 卖物 品的 主分 类. GetAuctionItemInfo(“type“, index) - 返回 指定 拍卖 物品 细节. GetA
21、uctionItemLink(“type“, index) - 返 回指 定拍 卖物 品 的 itemLink. GetAuctionItemSubClasses(classIndex) - 返 回拍 卖物 品 种类次 序的 子类. GetAuctionItemTimeLeft(“type“, index) - 返 回指 定拍 卖 物品剩 余时 间状 态. GetAuctionSellItemInfo() - 返回当 前拍 卖物 品相 关信 息 ( 未选 择为 nil). GetBidderAuctionItems(page) - ( 取得 竞标 人信 息). GetNumAuctionIte
22、ms(“type“) - 返回 指定 拍卖 物品列 表大小. GetOwnerAuctionItems(page) - ( 取得 拍卖 人信 息). GetSelectedAuctionItem(“type“) - 返 回选 择的 拍卖物 品索引 (1-50), 未选 择返 回 0. IsAuctionSortReversed(“type“, “sort“) - 指 定拍 卖物 品 的排列 类型 逆序 排列 时返 回 1, 否则为 nil. PlaceAuctionBid(“type“, index, bid) - 对选 择拍 卖物 品 投标. QueryAuctionItems(“name“
23、, minLevel, maxLevel, invTypeIndex, classIndex, subclassIndex, page, isUsable, qualityIndex) - ( 请 求检索 符合 条件 的物 品). SetSelectedAuctionItem(“type“, index) - ?. SortAuctionItems(“type“, “sort“) - 根据 指定 分栏 对指 定拍卖 列表 进行 排序. StartAuction(minBid, buyoutPrice, runTime) - 开 始拍 卖 创建拍 卖 面 板内 物品. 界面 AuctionFra
24、meAuctions.duration - 设置 拍卖 持续 总计时 间. - 银行函数 (Bank Functions)BankButtonIDToInvSlotID(buttonID) - 以背包 位置 ID 方式返回银行包裹位置 ID. CloseBankFrame() - 关闭 ( 打开的) 银行 窗 口. -Ramble GetBankSlotCost(numSlots) - 返回 购买 下个 银行 包裹 位置的 价格. -Ramble GetNumBankSlots() - 返回 已购买 银行 包裹 位置 数量, 如果 已购 完返 回特 定标 志. PurchaseSlot() -
25、 购 买一 个 空余的 银行 包裹 位置. - 战场函 数 (Battlefield Functions)AcceptAreaSpiritHeal() - 接受 灵魂 治疗. CancelAreaSpiritHeal() - 取 消灵魂 治疗. CanJoinBattlefieldAsGroup() - 玩家 不能 加入 战场 团队 则返回 nil. AcceptBattlefieldPort(index, acceptFlag) - 接 受或 拒绝 一个传 送至 战场 的请 求. CheckSpiritHealerDist() - 死 亡时如 果你 在精 神医 者复 活的范 围内 ,返 回
26、true. CloseBattlefield() - 关 闭候 列战场 窗口. GetHonorCurrency() - 获取 当前荣 誉值 GetAreaSpiritHealerTime() - 返回 距精 神医 者下 一次 释 放复活 的时 间. GetBattlefieldEstimatedWaitTime(index) - 返回 战场 队 列估算 的排 队时 间. GetBattlefieldFlagPosition(index) - 获得 战场 旗帜 的位 置. GetBattlefieldInfo(index) - 返回你 最近 打开 队列 窗口 的战场 的详 细信息. GetBa
27、ttlefieldInstanceExpiration() - 获取 战场 即将 关闭 的时间. GetBattlefieldInstanceInfo(index) - 获得 战场 的副 本 ID. GetBattlefieldInstanceRunTime() - 单位 : 毫 秒, 返 回本 次战场 已运 行的 时间. ( 似 乎是从 服务 器 上获取 数据 ,因 为它 和 time() 函数 并不 同步) GetBattlefieldMapIconScale() - 调整 在战 场小 地图 上标 记图标 的比 例. GetBattlefieldPortExpiration(index)
28、- 获得 对应 战场 传 送的剩 余时 间. GetBattlefieldPosition(index) - 获取 战场 中与 你不 在同 一小队 或团 队的 玩家 姓名 与位置 . GetBattlefieldScore(index) - 获得 一个 玩家 的战 场分 数. GetBattlefieldStatData(playerIndex, slotIndex) - 获取 战 场中某 一个 玩家 某一 分栏 的详细 信息 . ( 例如 战歌 峡谷 的夺 旗数) GetBattlefieldStatInfo(index) - 从 战场 记分 板的 指定 分 栏获取 信息 . GetBatt
29、lefieldStatus(index) - 返回 玩家 所在 或正 在队 列 中的战 场的 状态 . GetBattlefieldTimeWaited(index) - 获取 玩家 在战 场队 列中的 时间 . GetBattlefieldWinner() - 获 得战场 中获 胜者 . GetNumBattlefieldFlagPositions() - Get the number of flag positions available from GetBattlefieldFlagPosition(). GetNumBattlefieldPositions() - Get the nu
30、mber of positions available from GetBattlefieldPosition(). GetNumBattlefieldScores() - Returns the number of scores(players) listed in the battlefield scoreboard. GetNumBattlefieldStats() - Get the number of battleground specific columns. GetNumBattlefields() - Get the number of running battlefields
31、 for the last battleground queue window you opened. GetNumWorldStateUI() - 获 取世界 状态 的 UI 数量 GetSelectedBattlefield() - Get the selected battlefield to join first. GetWorldStateUIInfo(i) - Get score and flag status within a battlefield. JoinBattlefield(index, joinAs) - 加入 战场 队列 . LeaveBattlefield() -
32、 离开 战 场. ReportPlayerIsPVPAFK(“unit“) - 获取 当前 战场 中的 一玩 家是 否 AFK RequestBattlefieldPositions() - Request new data for GetBattlefieldPosition(). RequestBattlefieldScoreData() - Request new data for GetBattlefieldScore(). SetBattlefieldScoreFaction(faction) - Set the faction to show on the battlefield
33、scoreboard. SetSelectedBattlefield(index) - Select the battlefield instance you want to join or the first one that becomes available. ShowBattlefieldList(index) - Displays a queue window for the specified battlefield. Only works if you are already in a queue for the battlefield. Index corresponds to
34、 location in queue array. - 绑定函数(Binding Functions)移除 GetActionSelfCastKey() - 移除 GetAutoLootToggleKey() - GetBinding(index) - 获 取索 引的动 作和 快捷 键. GetBindingAction(“KEY“ ,checkOverride) - 获取 绑定 该 键的动 作. GetBindingKey(“command“) - 获取 该动 作绑 定的 键. 界面 GetBindingText(“key“, “prefix“, returnAbbr) - 获取 键值字 串
35、. GetCurrentBindingSet() - 查 询当前 快捷 键设 置是 否为 指定帐 号/ 角色. GetNumBindings() - 获 取总 快捷键 数与 标题. LoadBindings(which) - 读取 默认/ 帐号/ 角色 的特 定快 捷键配 置. RunBinding(“command“, “up“) - 运行 名为 “command“ 的快 捷键 移除 SetActionSelfCastKey(“SHIFT“ or “CTRL“ or “ALT“) - 移除 SetAutoLootToggleKey(“SHIFT“ or “CTRL“ or “ALT“) -
36、SaveBindings(which) - 保存 帐号或 角色 键配 置. SetBinding(“key“, “command“) - 设置 或取 消键 绑定. (2.0 - 不 能在 战斗 中使 用.) SetBindingSpell(“KEY“, “Spell Name“) - 设置 绑定 键到 技 能, 与 /cast 使用技 能一 样. SetBindingClick(“KEY“, “ButtonName“ ,“mouseButton“) - 设 置绑 定键 到按 钮对 象. 绑定 鼠标 时, 按 键按 下时 发生 鼠标 点击事 件, 释放 时发 生鼠 标 up. SetBindin
37、gItem(“KEY“, “itemname“) - SetBindingMacro(“KEY“, “macroname“|macroid) - SetConsoleKey(“key“) - 设 置控制 台键 ( 通常 “). SetOverrideBinding(owner, isPriority, “KEY“ ,“COMMAND“) - 设置/ 清 除重 复绑 定 键. SetOverrideBindingSpell(owner, isPriority, “KEY“, “spellname“) - SetOverrideBindingClick(owner, isPriority, “KE
38、Y“, “ButtoName“,“mouseButton“) - SetOverrideBindingItem(owner, isPriority, “KEY“, “itemname“) - SetOverrideBindingMacro(owner, isPriority, “KEY“, “macroname“|macroid) - ClearOverrideBindings(owner) - 重 置全 部重 复值. SetMouselookOverrideBinding(“KEY“ ,“COMMAND“) - IsModifierKeyDown() - 等价于 (IsShiftKeyDow
39、n() 或 IsControlKeyDown() 或 IsAltKeyDown(). IsModifiedClick(“action“) - 绑定该 动作 按钮 按下 返回 1, 否则 nil. IsMouseButtonDown(button or “button“) - - 增减益函数 (Buff/Debuff Functions) 请勿混淆 buffId 和 buffIndex, 这 是 不 同 概 念! CancelPlayerBuff(buffIndex) - 从玩 家身 上移 除特 定增 益. CancelTrackingBuff() - 取消 当前追 踪增 益 ( 追 踪矿 物
40、等.) GetPlayerBuff(buffId, buffFilter) - 获 取特 定效 果信 息 ( 有益, 有害 或被 动) GetPlayerBuffApplications(buffIndex) - 获取 特定 增益/ 减益的 叠加 数. GetPlayerBuffDispelType(buffIndex) - 获取 玩家 身上 指 定减益 类型 (“ 魔法“, “ 诅咒“, “ 疾病“, 或 “ 毒药“) GetPlayerBuffTexture(buffIndex) - 获取 特定 增益 图标 标识 GetPlayerBuffTimeLeft(buffIndex) - 获取
41、增益 持续 剩余 时间 GetWeaponEnchantInfo() - 返回主 手和 副手 武器 附魔 信息. UnitBuff(“unit“, index, showCastable) - 获取 特 定 单 位的增 益信 息. UnitDebuff(“unit“, index, showDispellable) - 获 取特 定 单位的 减益 信息. - 视角函数 (Camera Functions) 下列 API 仅 对 鼠 标 观 察 模 式 提 供 的 按 下 右 键 和 控 制 移 动 方 向 功 能. 不 支 持 按 下 鼠 标 左 键切换视角. 保护 CameraOrSelec
42、tOrMoveStart() - Begin “Left click“ in the 3D world. (1.10 - 保护) 保护 CameraOrSelectOrMoveStop(stickyFlag) - End “Left click“ in the 3D world. (1.10 - Protected) CameraZoomIn(increment) - Zooms the camera into the viewplane by increment. CameraZoomOut(increment) - Zooms the camera out of the viewplane
43、 by increment. FlipCameraYaw(degrees) - 在 Z 轴旋转 指定 角度. IsMouselooking() - 鼠标 观 察激活 时返 回 1, 否则 为 nil. MouselookStart() MouselookStop() MoveViewDownStart() - 镜 头向下 旋转. MoveViewDownStop() - 停 止调用 MoveViewDownStart() 旋转 的镜 头. MoveViewInStart() - Begins zooming the camera in. MoveViewInStop() - Stops zoo
44、ming the camera in after MoveViewInStart() is called. MoveViewLeftStart() - Begins rotating the camera to the Left. MoveViewLeftStop() - Stops rotating the camera after MoveViewLeftStart() is called. MoveViewOutStart() - Begins zooming the camera out. MoveViewOutStop() - Stops zooming the camera out
45、 after MoveViewOutStart() is called. MoveViewRightStart() - Begins rotating the camera to the Right. MoveViewRightStop() - Stops rotating the camera after MoveViewRightStart() is called. MoveViewUpStart() - 镜头 向上旋 转. MoveViewUpStop() - 停 止 调用 MoveViewUpStart() 旋转的 镜头. 保护 PitchDownStart() - Begins pi
46、tching the camera Downward. 保护 PitchDownStop() - Stops pitching the camera after PitchDownStart() is called. 保护 PitchUpStart() - Begins pitching the camera Upward. 保护 PitchUpStop() - Stops pitching the camera after PitchUpStart() is called. NextView() - Cycles forward through the five predefined cam
47、era positions. PrevView() - Cycles backward through the five predefined camera positions. ResetView(index) - Resets the specified (1-5) predefined camera position to its default if it was changed using SaveView(index). SaveView(index) - Replaces the specified (1-5) predefined camera positions with the current camera position. SetView(index) -