參考資料

函式參考

內建輔助函式

遊戲中「函式」分頁列為內建的輔助函式。公用輔助函式直接以名稱呼叫;其他輔助函式需繫結為相依項目(選擇自動完成項目,或在「相依項目」中新增),再以其完整名稱呼叫。

240 個輔助函式中的 88 個。 清除篩選

Platform.actions.call 相依項目Calls a native API function in protected mode and returns its first result only when Rotation Master can read it.
Platform.actions.findSlot 相依項目Finds the spell-book slot of a spell with FindSpellBookSlotBySpellID.
Platform.actions.GetSpellRangeState 公用使用適當的用戶端 API 或法術書欄位,讀取某個單位針對特定法術的距離。沒有距離限制的法術傳回 applicable=false;否則 applicable=true,inRange 記錄該單位是否在距離內。未知或無法存取的觀測會傳回 nil 及原因。
Platform.actions.spellID 相依項目Validates a spell ID argument.
Platform.announcement_recipient.GetAnnouncementRecipientGroupMembership 公用將確切的施法對象名稱與目前有限的隊伍或團隊名單進行比對,然後透過單位代碼觀測其成員身分。名單資料缺少、含義不明確或正在變化時維持為無法使用;絕不讀取所選目標,也不在施法之間保留狀態。
Platform.casting.durationSeconds 相依項目Computes the total length of a cast or channel in seconds from the millisecond start and end times in a UnitCastingInfo or UnitChannelInfo result.
Platform.casting.finite 相依項目Returns true when value is a number that is neither NaN nor infinite, and false for anything else.
Platform.casting.GetUnitCastObservation 公用在探測或受限政策用戶端上觀測單位的施法或引導。已知不存在的單位或可讀的非活動結果傳回 active=false。活動記錄包含 name,或在名稱為機密時包含 nameReason(單位仍在施法),以及可獨立取得的 remainingSeconds、durationSeconds、interruptible 與 spellID 欄位;選用欄位無法使用時附帶 remainingReason、durationReason、interruptibleReason 或 spellReason。存在性觀測缺少、失敗或受限時傳回 nil 及原因。
Platform.casting.interruptibility 相依項目Converts the native notInterruptible flag of a cast or channel into an interruptible Boolean (its inverse).
Platform.casting.remainingSeconds 相依項目Converts the millisecond end time of a cast or channel into the seconds left, measured against a fresh GetTime() and clamped at zero.
Platform.casting.spellIdentity 相依項目Validates the spell ID field of a cast or channel result.
Platform.creature_type.GetUnitCreatureTypeID 公用在探測或受限政策用戶端上,從原生 UnitCreatureType 的第二個傳回值觀測生物身分。先檢查確切的 UnitExists(unit);可讀的 false 會直接傳回 false,不需要也不呼叫生物中繼資料。存在的單位要求可讀的有限數字 ID;未使用的在地化名稱不影響可用性。帶正負號、小數、零以及未來的有限 ID 都會作為已知值保留。所需資訊缺少、失敗、為 nil、受限或格式錯誤時傳回 nil 及原因。不會新增生物列舉、翻譯標題比較或長期快取。
Platform.form.GetPlayerFormObservation 公用使用一次受保護的無參數 GetShapeshiftForm 呼叫觀測玩家目前的形態。保留每個可讀的有限數字結果,包括零、帶正負號與小數值;不會推斷更嚴格的原生索引範圍。缺少、失敗、為 nil、受限或非有限的資料維持為無法使用。不會新增形態數量、職業、法術 ID、單位或選擇性參數。
Platform.glyphs.GetGlyphItemInfo 公用使用受保護的原生物品中繼資料,將一個數字物品歸類為所請求職業的雕紋。職業是選擇性的,預設為可讀取的玩家職業。這只確定物品分類,不確定裝備狀態,也不提供物品到雕紋法術 ID 的對應。
Platform.glyphs.GetGlyphSocketSnapshot 公用在已驗證的巫妖王之怒、浩劫與重生與潘達利亞之謎用戶端配置上觀測雕紋插槽。傳回 slots 與 complete 標記。每個插槽在已知鎖定或為空時為 active=false,被佔用時為 active=true 並附帶 spellID,無法使用時 active 為 nil 並附帶原因。未知配置與失敗的數量查詢會傳回 nil 及原因。這不會比較物品名稱,也不能證明物品與法術身分的確切對應。
Platform.glyphs.integer 相依項目Returns true when value is a finite whole number no smaller than minimum, and false for anything else (including NaN and infinity).
Platform.glyphs.layout 相依項目Maps client information to the position in the GetGlyphSocketInfo result that holds the glyph spell ID.
Platform.glyphs.socket 相依項目Reads one glyph socket by calling fn(index) in protected mode and always returns a slot record with slot=index.
Platform.groups.GetGroupMembership 公用在已識別的用戶端系列上讀取公開的隊伍成員身分。未知用戶端不受支援。raidOnly 為 true 時檢查 IsInRaid;為 false 或 nil 時使用原生預設的隊伍類別檢查 IsInGroup。可讀的 false 結果維持為 false。缺少、失敗、格式錯誤或受限的觀測會傳回 nil 及原因。
Platform.groups.GetUnitGroupMembership 公用讀取指定單位是否屬於玩家的隊伍或團隊。raidOnly 為 true 時只查詢 UnitInRaid;否則 UnitInParty 結果為 true 時直接傳回,為 false 時繼續查詢 UnitInRaid,未知時維持為無法使用。可讀的 nil 團隊索引表示 false;整數團隊索引 1..40 表示 true。名稱會原樣傳給原生 API;原生 API 是否接受名稱查詢需視用戶端而定。
Platform.health_forecast.finite 相依項目Returns true when value is a number that is neither NaN nor infinite, and false for anything else.
Platform.health_forecast.GetHealthForecastIdentityObservation 公用在探測或受限政策用戶端上觀測確切的 UnitExists(unit),然後僅對存在的單位觀測 UnitGUID(unit)。已知不存在時為 false。存在的身分要求可讀的非空 GUID;所需資訊缺少、失敗、格式錯誤或受限時為無法使用。不會新增生命力、提供者或額外單位的觀測。
Platform.health_forecast.GetHealthForecastProviderObservation 公用使用確切的單參數點號呼叫讀取選擇性的 RealMobHealth。命名空間不存在(nil/false)時傳回空記錄。分別標準化目前值與最大值:nil/false 欄位允許改用原生值,數字零仍視為存在。所使用的提供者資訊格式錯誤、失敗、受限、為負或非有限時為無法使用。不使用提供者或過期的備用快取。
Platform.health_forecast.GetHealthForecastTimeObservation 公用為所需的生命力預測重新觀測一次受保護的無參數 GetTime。要求結果可讀且為有限數字;保留帶正負號與小數值,不額外加入單調、整數或非負的限制。不使用時鐘快取或額外的原生查詢。
Platform.health_forecast.GetHealthForecastValueObservation 公用在另外的身分檢查之後讀取惰性的生命力純量。current 種類使用確切的 UnitHealth(unit);maximum 使用確切的 UnitHealthMax(unit)。探測或受限政策用戶端接受可讀的有限非負數字(包括零)。不會重複呼叫存在性/GUID 查詢,也不會改用其他元組。
Platform.health_forecast.providerValue 相依項目Normalizes one health figure returned by the RealMobHealth provider.
Platform.health_forecast.readField 相依項目Reads object[key] in protected mode.
Platform.instance.GetInstanceObservation 公用觀測一個受保護的無參數 IsInInstance 元組。所需的可讀布林成員值與類型欄位無關:已知在副本外時直接傳回,不解釋未使用的類型;在副本內時傳回可讀的字串類型,或在該次要欄位無法使用時傳回 instanceTypeReason。檢測是否在副本外的呼叫端只需要成員值;在副本內比較類型時必須檢查次要原因。不會新增戶外、區域或單位推斷。
Platform.items.finite 相依項目Returns true when value is a finite, nonnegative number (not NaN or infinity), and false for anything else.
Platform.items.GetItemInfoInstant 公用讀取正規化的原生物品分類中繼資料。記錄包含正規的 itemID、classID 與 subClassID,以及在可讀且非空時的 equipLoc(未在地化的 INVTYPE_* 裝備位置標記);不要求物品顯示文字已載入。中繼資料缺少、失敗、格式錯誤或受限時傳回 nil 及原因。
Platform.items.identifier 相依項目Validates an item argument.
Platform.loss_of_control.GetLossOfControlCount 公用使用受保護的無參數點號呼叫,讀取有說明文件的活躍失去控制數量。要求結果可讀且為有限的非負整數。零表示一次完整的空掃描,不需要列 API。RM 將掃描限制為 256 列,超出該資源預算時傳回無法使用;這並不是原生宣告的最大值。所需觀測缺少、失敗、受限或格式錯誤時維持為無法使用。
Platform.loss_of_control.GetLossOfControlEvent 公用依原生索引與所請求的主題種類,讀取一條有說明文件的活躍失去控制記錄列。type 查詢只需要可讀的控制類型字串;school 查詢只需要可讀的有限非負整數法術類型遮罩。選擇性的計時以有限的 timeRemaining 或逐欄位的明確原因傳回,因此不相關的主題不需要可用的計時器。缺少的列是無法使用的快照觀測。不會使用顯示欄位、推斷的截止時間、持續時間總和、最大值或原生別名備用方案。
Platform.mobinfo2.finite 相依項目Checks that a value is a readable finite number.
Platform.mobinfo2.GetMobInfo2Observation 公用在探測或受限政策用戶端上讀取選擇性的 MobInfo2 歷史觀測。只快取確切的所選單位存在性;UnitName 的第一個結果、UnitLevel 的第一個結果以及三參數的 MI2_GetMobData(name,level,unit) 點號呼叫每次都會重新取得。已知不存在的單位,以及成功傳回的未記錄的 nil 或省略的歷史,與無法使用的原生/提供者資訊保持區分。保留可讀的 runner 純量真值、法術類型正負號以及缺少 Hits 時預設為一。正的抗性比例必須有限;完全免疫會使用有限的 Hits,而部分免疫只需要其負值的法術類型觀測。絕不推斷原生抗性或借用舊記錄。
Platform.mobinfo2.hitCount 相依項目Reads the hit count for a spell school from a MobInfo2 resists table (the field named school.."Hits").
Platform.mobinfo2.presence 相依項目Checks whether a unit exists with one protected UnitExists call.
Platform.mobinfo2.readField 相依項目Reads object[key] in protected mode for MobInfo2 data.
Platform.pet.GetPetObservation 公用觀測寵物是否確切存在,並可選擇性地觀測其經 GetUnitName 格式化的顯示名稱。僅查詢存在性時從不需要名稱資料。已知不存在時會略過名稱查詢。僅在請求時,存在的寵物才需要可讀的非空名稱;所需觀測缺少、失敗、為 nil、受限或格式錯誤時傳回 nil 及原因。顯示輔助函式只以原有的單一寵物參數呼叫,不改用 UnitName,也不推斷快捷列、生命力或技能狀態。
Platform.player_flags.GetPlayerFlagObservation 公用觀測一個獨立的無參數玩家標記:stealthed 使用 IsStealthed,control 使用 HasFullControl,outdoors 使用 IsOutdoors。可讀的 true 與 false 保留其含義。所需資料缺少、失敗、為 nil、受限或格式錯誤時傳回 nil 及原因。不會新增存在性、副本或技能可用性的推斷。
Platform.player_movement.GetPlayerMovementObservation 公用在受支援且可讀的用戶端上觀測玩家目前的移動速度。這只針對 player 查詢 GetUnitSpeed,不檢測其他單位,也不重新導向載具擁有權。零表示靜止;正的有限小數速度仍然有效。缺少、失敗、受限或格式錯誤的觀測會傳回 nil 及原因。
Platform.points.GetPlayerComboPointObservation 公用觀測明確選擇的 TBC 玩家連擊點傳輸方式。current 只使用 GetComboPoints(player,target);maximum 使用帶原始選擇器的 UnitPowerMax(player,powerType)。其他用戶端系列在此無法使用,必須使用其現有的點數能量觀測器。保留可讀的有限帶正負號、小數與零值。缺少、失敗、受限或格式錯誤的資料維持為無法使用;所選的連擊點查詢失敗時絕不會改用 UnitPower。這不會觀測其他角色,也不會新增快取。
Platform.points.GetUnitPointFragmentObservation 公用觀測用戶端以片段回報的點數資源(潘達利亞之謎的燃火餘燼)。目前值確切使用 UnitPower(unit,powerType,true),最大值確切使用 UnitPowerMax(unit,powerType,true);結果會除以暴雪的 MAX_POWER_PER_EMBER(10),因此 35 個片段為 3.5。僅限探測政策。缺少、失敗、受限或格式錯誤的資料維持為無法使用;絕不會退回完整單位的查詢。不新增快取。
Platform.points.GetUnitPointIdentityObservation 公用為點數資源條件觀測確切的所選單位是否存在,並可選擇性地觀測其職業檔名。已知不存在時傳回 exists=false,不讀取職業。存在的單位只在請求時需要 UnitClass 的第二個傳回值;未使用的在地化名稱與 ID 不影響可用性。所需觀測缺少、失敗、受限或格式錯誤時維持為無法使用。這不會選擇資源或快取身分。
Platform.points.GetUnitPointPowerObservation 公用使用確切的雙參數 UnitPower 或 UnitPowerMax 查詢,讀取一個明確選擇的點數資源數量。選擇器為必要;不會推斷主要資源或重新對應角色。保留有限的帶正負號、小數與零數量,不進行截斷。缺少、失敗、受限或非有限的資料維持為無法使用。目前值與最大值是分開的觀測,因此呼叫端可以共用目前值快照,同時依需要延遲請求最大值。
Platform.range.GetNameplateMaxDistance 公用使用受支援的 CVar API 讀取目前正的名條可見距離。這會限制「距離內計數」查詢;它不能證明所有附近的單位都已被觀測到。缺少、格式錯誤、受限或失敗的觀測會傳回 nil 及原因。
Platform.range.GetRangeCheckBounds 公用讀取某個單位的公開 LibRangeCheck 距離區間。成功的上限是包含的;正的失敗下限是嚴格的。零下限是合成的。兩個邊界都不是精確距離,缺少上限也不能證明該單位在所有半徑之外。無法使用、格式錯誤、受限或失敗的觀測會傳回 nil 及原因。
Platform.role.GetInspectRoleObservation 公用在探測或受限政策用戶端上觀測所選單位的職責,不發出觀察請求。已知單位不存在時傳回 false。優先使用可呼叫的現代觀察 API,僅當它不可呼叫時才改用舊版;所選 API 失敗時絕不會改用其他 API。要求專精 ID 為正的有限整數,並且只使用確切的單參數 GetSpecializationInfoByID 呼叫的第五個傳回值(職責)。所需資訊缺少、失敗、受限或格式錯誤時為無法使用;可讀的非空未來職責字串保持原樣。
Platform.role.GetTalentGroupRoleObservation 公用在探測或受限政策用戶端上,觀測確切的舊版 GetTalentGroupRole(group) 點號呼叫的第一個職責結果。將可讀的所選天賦組原樣轉送,包括將 nil 作為一個參數;不推斷天賦組範圍、不替換為其他 API,也不查詢玩家單位。完整的舊版主要宣告並未成立。職責資料缺少、失敗、受限、為空或格式錯誤時為無法使用;可讀的非空未來字串保持原樣。
Platform.role.readField 相依項目Reads object[key] in protected mode, used to look up optional APIs.
Platform.role.roleValue 相依項目Validates a role returned by a native API.
Platform.roster_class.GetRosterClassObservation 公用在已識別的用戶端系列上讀取公開的名單身分。輸入路由僅限 player、party1 到 party4,以及 raid1 到 raid40。先以該確切的單參數代碼呼叫 UnitExists;已知為 false 時直接傳回 false,不查詢職業。對於存在的單位,只使用 UnitClass 的第二個傳回值作為可讀的非空職業檔名字串,不限制職業列舉。所需資訊缺少、失敗、格式錯誤或受限時傳回 nil 及原因。
Platform.roster_class.rosterUnit 相依項目Returns true when unit is exactly player, party1 through party4, or raid1 through raid40 (no leading zeros), and false for any other string.
Platform.rotation_owner.GetPlayerOwnerClassObservation 公用為循環擁有權讀取一次全新的受保護 UnitClass 玩家觀測。只使用第二個傳回值中可讀的非空職業檔名。不會新增存在性、等級、載具、用戶端系列或戰鬥政策的讀取,結果也不會跨呼叫保留。核心擁有權仍會分別驗證職業代碼與角色鍵;被覆蓋的情境提供者保留其完整的原有路徑。
Platform.runes.finite 相依項目Returns true when value is a number that is neither NaN nor infinite, and false for anything else.
Platform.runes.GetRuneCooldownObservation 公用為一個確切的原生欄位讀取一次受保護的 GetRuneCooldown 元組。分別標準化 ready、start 與 duration:ready 需要可讀的布林值,而每個時間值需要可讀的有限數字,並保留帶正負號、小數與零值。每個無法使用的欄位都附帶其自己的原因。成功傳回空元組時會產生部分記錄;缺少功能、政策或原生呼叫失敗時傳回 nil。絕不從計時推斷 ready,也不從 ready 推斷計時。請在呼叫端快取這份完整記錄,以便在符文計數與冷卻判斷之間共用一次觀測。
Platform.runes.GetRuneEvaluationTime 公用為符文冷卻運算讀取一次全新的受保護無參數 GetTime。要求結果可讀且為有限數字。此觀測刻意不快取;呼叫端保留原有的「先讀時鐘再掃描」順序,並且只在有相符的符文需要計時時才要求其值。不會以評估開始時間替代或推斷時間。
Platform.runes.GetRuneTypeObservation 公用使用只帶單一索引參數的 GetRuneType 觀測一個確切的原生符文欄位。要求類型可讀且為正的有限整數;已知的未來數字類型與所選類型保持區分,死亡符文是一個確切的類型而不是萬用字元。缺少、失敗、受限或格式錯誤的觀測維持為無法使用。不會新增職業、單位、數量或推斷基礎符文的查詢。
Platform.runes.numberField 相依項目Normalizes one numeric field of a native result.
Platform.runes.validIndex 相依項目Validates a rune slot index.
Platform.spells.cooldownFlags 相依項目Extracts the never-secret isEnabled, isActive and isOnGCD flags from a C_Spell.GetSpellCooldown record whose times are secret.
Platform.spells.cooldownValues 相依項目Reads a spell cooldown as separate values for the readiness checks.
Platform.spells.copy 相依項目Copies the expected fields of a native result table into a new table, checking each type.
Platform.spells.finiteNonNegative 相依項目Returns true when value is a nonnegative number that is not NaN or infinity, and false for anything else.
Platform.spells.flagReadiness 相依項目Decides cooldown readiness from the never-secret flags when the cooldown times are hidden.
Platform.spells.gcdRunning 相依項目Reports whether the global cooldown is running at time now.
Platform.spells.GetSpellCharges 公用讀取標準化的充能記錄:currentCharges、maxCharges、cooldownStartTime、cooldownDuration、chargeModRate 與 isActive。不受支援的法術或受限的用戶端資料會傳回 nil 及原因。
Platform.spells.GetSpellCooldown 公用讀取各支援用戶端的法術冷卻並將其正規化。傳回的記錄包含 startTime、duration、isEnabled 與 modRate。時間戳記與持續時間已經以 GetTime() 秒數描述到期時間;不要再除以 modRate。當用戶端隱藏時間時(正式版與永久的戰鬥中),記錄為 nil,原因為 restricted-value,在可以讀取時其後會附上永不為機密的 isEnabled、isActive 與 isOnGCD 旗標。
Platform.spells.identifier 相依項目Validates a spell argument.
Platform.spells.IsAutoRepeatActive 公用讀取玩家某個法術(例如射擊或自動射擊)的自動重複狀態。這與目前或佇列中的施法不同。現代用戶端會收到確切的法術 ID;舊版查詢會先解析玩家的法術書欄位。受限的用戶端政策、無法讀取的結果以及無法使用的法術書欄位會傳回 nil 及原因。這只觀測狀態,從不開始或停止法術。
Platform.spells.IsSpellReady 公用檢查某個法術現在能否被建議,允許剩餘冷卻時間隨目前共用冷卻一同結束的法術。在正式版與永久中,戰鬥中的冷卻時間是機密值,因此改為依據永不為機密的 isEnabled、isActive 與 isOnGCD 旗標判斷是否就緒。此函式只檢查冷卻是否就緒;不檢查是否已學會、距離或資源是否足夠。請傳入來自 evalStart 或 GetTime() 的評估時間。
Platform.spells.own 相依項目Returns a record holding only the expected fields, each checked by type.
Platform.threat.GetUnitThreatObservation 公用依序觀測所選單位是否存在、是否與玩家敵對,然後觀測玩家在該單位上的威脅值狀態。已知不存在、非敵人以及成功讀取到的 nil 威脅值狀態傳回 false,以保留「無威脅值」判斷。包括零在內的有限狀態數值保留其原有的比較含義。所需資訊缺少、失敗、為 nil、受限或格式錯誤時傳回 nil 及原因。不會新增可攻擊、死亡、戰鬥或載具的推斷。
Platform.unit_attackability.GetUnitAttackabilityObservation 公用使用確切的 UnitExists、UnitCanAttack 與 UnitIsDead 判斷,觀測玩家是否可以攻擊一個未死亡的所選單位。已知不存在或可讀的不可攻擊結果會傳回 false,不查詢死亡狀態。所需觀測缺少、失敗、受限或格式錯誤時傳回 nil 及原因。這不檢測鬼魂狀態、距離、敵對狀態或技能可用性,也不重新導向單位擁有權。
Platform.unit_flags.GetUnitFlagObservation 公用觀測一個目前的單位標記:combat 使用 UnitAffectingCombat,enemy 使用以 player 為第一個單位的 UnitIsEnemy,pvp 使用 UnitIsPVP。可讀且不存在的單位傳回 false,不查詢該標記。所需觀測缺少、失敗、受限或格式錯誤時傳回 nil 及原因。這會保留確切的所選單位,不推斷友好、可攻擊或其他單位狀態。
Platform.unit_health.finite 相依項目Returns true when value is a number that is neither NaN nor infinite, and false for anything else.
Platform.unit_health.GetUnitHealthObservation 公用在受支援的用戶端上觀測可讀的目前生命力,並可選擇性地觀測最大生命力。可讀且不存在的單位傳回 exists=false。缺少、失敗、受限或格式錯誤的觀測會傳回 nil 及原因;它們不能證明單位不存在或得出生命力。
Platform.unit_identity.GetUnitIdentityObservation 公用只用 UnitExists 檢查第一個單位代碼後,使用 UnitIsUnit 比較兩個確切的單位代碼。若第一個單位可讀且不存在,則不進行比較直接傳回 false。所需的觀測缺少、失敗、受限或格式錯誤時傳回 nil 及原因。不會額外進行第二次存在性查詢、GUID 查詢或推斷身分。
Platform.unit_level.finite 相依項目Returns true when value is a number that is neither NaN nor infinite, and false for anything else.
Platform.unit_level.GetUnitLevelObservation 公用在已知的用戶端上觀測可讀的原始單位等級。可讀且不存在的單位傳回 exists=false;存在的單位要求 UnitLevel 為正的有限整數。未知的首領等級,以及缺少、失敗、受限或格式錯誤的觀測會傳回 nil 及原因。這不使用有效等級或縮放後的等級。
Platform.unit_metadata.GetUnitMetadataObservation 公用在檢查 UnitExists 後觀測一個所使用的原生單位中繼資料欄位:class 使用 UnitClass 的第二個傳回值,creature 使用在地化的 UnitCreatureType 名稱,classification 使用 UnitClassification。可讀且不存在的單位傳回 false,不查詢中繼資料。未使用的元組欄位不影響可用性;所需的值缺少、失敗、為 nil、受限或格式錯誤時傳回 nil 及原因。不會新增玩家職業、GUID、列舉或翻譯推斷。
Platform.unit_power.finite 相依項目Returns true when value is a number that is neither NaN nor infinite, and false for anything else.
Platform.unit_power.GetUnitPowerObservation 公用在受支援且可讀的用戶端上觀測明確的法力或目前的原始能量資源。資源身分從即時的 PowerType 列舉中選擇;明確法力絕不會改用目前能量條。已知不存在時傳回 exists=false;缺少、失敗、受限或格式錯誤的觀測會傳回 nil 及原因。current 模式下的數量保留帶正負號的原生資源;明確法力為非負。僅在需要時請求最大值;百分比的使用者必須要求最大值為正。
Platform.unit_presence.GetUnitPresenceObservation 公用在已識別的用戶端系列上觀測單位的存在性。將所選單位原樣傳給一次受保護的 UnitExists 呼叫。保留可讀的 true 與 false;所需觀測缺少、失敗、受限、為 nil 或格式錯誤時傳回 nil 及原因。不會新增身分、可見性、距離或戰鬥狀態的查詢。
Platform.unit_stat.finite 相依項目Returns true when value is a number that is neither NaN nor infinite, and false for anything else.
Platform.unit_stat.GetUnitStatObservation 公用只從原生的第二個傳回值觀測有效屬性。在探測或受限政策用戶端上,先查詢確切的 UnitExists(unit),然後對選擇器 1..5 查詢 UnitStat(unit,stat),或對選擇器 6 查詢 UnitArmor(unit)。已知不存在時傳回 exists=false;所需資訊缺少、失敗、受限或非有限時傳回 nil。保留有限的帶正負號、小數與零值;忽略所有未使用的元組欄位。1..6 的路由是 RM 的選擇器政策,而非原生值域的限制。
Platform.unit_states.GetUnitStateObservation 公用在探測或受限政策用戶端上,觀測確切的所選單位是否死亡或處於鬼魂狀態,或是否對玩家友好。所需觀測缺少、失敗、受限或格式錯誤時為無法使用。單位不存在時為無法使用,而不是否定比對,在 NOT 下同樣如此。不會保留跨輪詢的狀態。
Platform.zone_pvp.GetZonePVPObservation 公用使用一次受保護的無參數點號呼叫,觀測區域 PvP 分類的第一個結果。優先使用可呼叫的 C_PvP.GetZonePVPInfo,僅當現代 API 不可呼叫時才使用全域輔助函式。成功傳回 nil 或沒有傳回值時,會產生一個已知的空記錄;缺少、失敗、受限或格式錯誤的觀測維持為無法使用。可讀的空字串與未來字串保留其確切含義,未使用的傳回欄位不決定可用性。在現代 API 傳回結果或失敗後,絕不切換後端。