Llamar como
Platform.runes.validIndex(self, index)
Registra la dependencia Platform.runes.validIndex 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
Validates a rune slot index. Returns true for a readable integer from 1 through 6; otherwise nil with "restricted-value" or "invalid-rune-index".
Argumentos
| Nombre | Tipo | Qué hace |
|---|---|---|
self | RMPlatform | Rotation Master platform adapter (normally addon.Platform), used for its CanReadValue check. |
index | any | Rune slot index to validate. |
Retornos
| 1 | boolean | nil | True when index is a valid rune slot; nil otherwise. |
|---|---|---|
| 2 | string | nil | Reason when invalid. |
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.
Valores secretos (Retail y Forever)
En Retail y Forever, el juego entrega a los addons valores secretos. Esta función auxiliar comprueba lo que lee (addon.Platform:CanReadValue) y, en lugar de un secreto que no puede comparar, devuelve nil con un motivo como restricted-value. Trata nil como no disponible, no como falso.
Cómo la llama el addon
Platform.runes.GetRuneCooldownObservationlocal valid,reason=validIndex(self,index)Platform.runes.GetRuneTypeObservationlocal valid,reason=validIndex(self,index)
Dependencias
finite→Platform.runes.finite
Código fuente
Platform/runes.lua, línea 24. Solo lectura en el juego; Duplicar crea una copia editable.
Platform.runes.validIndex(self, index)
if not self:CanReadValue(index) then return nil,'restricted-value' end
if not finite(index) or index%1~=0 or index<1 or index>6 then return nil,'invalid-rune-index' end
return true