Aufruf als
Core.health_forecast_conditions.readField(platform, object, key)
Erfassen Sie die Abhängigkeit Core.health_forecast_conditions.readField und rufen Sie sie dann unter diesem Namen auf. Ein Aufruf über den Namensraum übergibt kein self: Verwenden Sie einen Doppelpunkt-Aufruf oder übergeben Sie das Objekt selbst.
Was sie bewirkt
Reads object[key] for the health-forecast conditions without letting a restricted value, a non-table object or an index error escape.
Argumente
| Name | Typ | Was sie bewirkt |
|---|---|---|
platform | RMPlatform | Platform whose CanReadValue decides readability. |
object | any | Table to read, such as a damage history record. |
key | any | Key to read. |
Rückgabewerte
| 1 | any | The field's value (possibly nil), or nil on failure. |
|---|---|---|
| 2 | string | nil | Reason on failure: restricted-value, invalid-health-forecast-data or health-forecast-data-error. |
Editionen
Integrierte Hilfsfunktionen werden auf jeder Edition registriert. Unterschiedlich ist die Spiel-API, die sie lesen; fehlt eine, weicht die Hilfsfunktion aus oder gibt nil mit einem Grund zurück.
Sie liest keine Spiel-API direkt.
Geheime Werte (Retail und Forever)
Auf Retail und Forever übergibt das Spiel Addons geheime Werte. Diese Hilfsfunktion prüft, was sie liest (addon.Platform:CanReadValue), und gibt statt eines geheimen Werts, den sie nicht vergleichen kann, nil mit einem Grund wie restricted-value zurück. Behandeln Sie nil als nicht verfügbar, nicht als false.
Wie das Addon sie aufruft
Core.health_forecast_conditions.GetConditionHealthForecastcurrent,why=readField(platform,provider,'current')
Quelle
Core/health_forecast_conditions.lua, Zeile 35. Im Spiel schreibgeschützt; Duplizieren erstellt eine bearbeitbare Kopie.
Core.health_forecast_conditions.readField(platform, object, key)
if not platform:CanReadValue(object) then return nil,'restricted-value' end
if type(object)~='table' then return nil,'invalid-health-forecast-data' end
local ok,value=pcall(function() return object[key] end)
if not ok then return nil,'health-forecast-data-error' end
if not platform:CanReadValue(value) then return nil,'restricted-value' end
return value