private T LookupValue() { string keyContents = PlayerPrefs.GetString(_key); Diag.Crumb(this, $"Looking up key contents for {_key} as {keyContents}"); return(PlayerPrefs.HasKey(_key) ? JsonUtility.FromJson <T>(keyContents) : GetDefaultValue()); }
public void Save() { if (_value == null) { return; } string valueAsString = JsonUtility.ToJson(_value); if (string.IsNullOrEmpty(valueAsString)) { Diag.Report(new InvalidOperationException($"Parsed value for {_key} as null or empty string.")); return; } PlayerPrefs.SetString(_key, valueAsString); Diag.Crumb(this, $"Saved key {_key} to {valueAsString}"); }
public void SetIfUnassigned(T data) { Diag.Crumb(this, $"Setting value for key {_key} to be {data}"); _value = _value ?? data; }