Llamar como
Platform.glyphs.layout(info)
Registra la dependencia Platform.glyphs.layout y luego llámala con ese nombre. Una llamada con espacio de nombres no pasa self: usa una llamada con dos puntos o pasa tú mismo el objeto.
Qué hace
Maps client information to the position in the GetGlyphSocketInfo result that holds the glyph spell ID. It recognizes only progression-family Wrath (3.4.0-3.4.3), Cataclysm (4.4.0-4.4.2) and Mists (5.5.0-5.5.4) clients whose version string and interface number agree, returning 3 for Wrath and 4 for Cataclysm and Mists; every other client returns nil.
Argumentos
| Nombre | Tipo | Qué hace |
|---|---|---|
info | table | Client information from addon.Platform:GetClientInfo() (projectId, family, expansion, version, interface). |
Retornos
| 1 | number | nil | Return position of the glyph spell ID, or nil for an unsupported client layout. |
|---|
Ediciones
Las funciones auxiliares integradas se registran en todas las ediciones. Lo que cambia es la API del juego que leen; donde falta alguna, la función auxiliar recurre a una alternativa o devuelve nil con un motivo.
No lee directamente ninguna API del juego.
Cómo la llama el addon
Platform.glyphs.GetGlyphSocketSnapshotlocal position=layout(self:GetClientInfo())
Código fuente
Platform/glyphs.lua, línea 51. Solo lectura en el juego; Duplicar crea una copia editable.
Platform.glyphs.layout(info)
local editions={
[11]={expansion=2,prefix='3.4.',last=3,base=30400,position=3},
[14]={expansion=3,prefix='4.4.',last=2,base=40400,position=4},
[19]={expansion=4,prefix='5.5.',last=4,base=50500,position=4},
}
local edition=editions[info.projectId]
if not edition or info.family~='progression' or info.expansion~=edition.expansion then return nil end
for patch=0,edition.last do
if info.version==edition.prefix..patch and info.interface==edition.base+patch then return edition.position end
end