Как задать в PlayerPrefs bool значение в unity?

Как задать в PlayerPrefs bool значение в unity?


Ответы (1 шт):

Автор решения: Максим Фисман

Есть всего три метода PlayerPrefs:

  • PlayerPrefs.SetInt(string s, int v) — PlayerPrefs.GetInt(string s)
  • PlayerPrefs.SetFloat(string s, float v) — PlayerPrefs.GetFloat(string s)
  • PlayerPrefs.SetString(string s, string v) — PlayerPrefs.GetString(string s)

Все они записывают значение v с ключом s, либо получают значение по ключу s.

Если вы хотите сохранить bool, то его надо выразить через int, float или string. Легче через int:

bool IntToBool (int n) 
    => n == 1;
int BoolToInt (bool b) 
    => (b ? 1 : 0);

После этого можно делать:

PlayerPrefs.SetInt([ключ], BoolToInt([bool значение])); // сохранение
IntToBool(PlayerPrefs.GetInt([ключ])); // чтение
→ Ссылка