參考資料 › 函式參考 › Conditions

Conditions.specialization.classChoices

相依項目

呼叫方式

Conditions.specialization.classChoices(class)

記錄相依項目 Conditions.specialization.classChoices,然後以該名稱呼叫。含命名空間的呼叫不會傳入 self:請使用冒號呼叫,或自行傳入該物件。

作用

Builds the specialization choices for one class in the SPECIALIZATION editor. Prefers the platform's live list, with icons, and otherwise falls back to the addon's built-in specialization table.

參數

名稱類型作用
classstringClass file token, such as "WARRIOR".

傳回值

1tableMap of specialization ID to its name, or to {text=name, icon=icon} when the platform supplies an icon.
2number[]Specialization IDs in display order.

版本

內建輔助函式在每個版本上都會註冊。不同的是它們讀取的遊戲 API;某個 API 不存在時,輔助函式會改用備用方式,或傳回 nil 並附上原因。

它不會直接讀取任何遊戲 API。

插件如何呼叫它

  • 專精 (widget)
    local choices, order = classChoices(v)

相依項目

原始碼

Conditions/specialization.lua,第 176 行。在遊戲中為唯讀;「複製」會產生一份可編輯的複本。

Conditions.specialization.classChoices(class)
    local choices,order={},{}
    local listed=CLASS_IDS[class] and addon.Platform.GetClassSpecializationChoices
        and addon.Platform:GetClassSpecializationChoices(CLASS_IDS[class])
    if listed and #listed>0 then
        for _,spec in ipairs(listed) do
            choices[spec.id]=spec.icon and {text=spec.name,icon=spec.icon} or spec.name
            order[#order+1]=spec.id
        end
        return choices,order
    end
    for _,id in ipairs(SPEC_ORDER) do
        if SPECS[id][1]==class then choices[id]=specName(id);order[#order+1]=id end
    end
    return choices,order

返回函式參考