Skip to content

Latest commit

 

History

History
128 lines (95 loc) · 2.36 KB

README.md

File metadata and controls

128 lines (95 loc) · 2.36 KB

Unity PlayerPrefsExtra

Video thumbnail

Unity PlayerPrefsExtra gives you the ability to save more complexe data types such as : Vectors, Bool, Colors, Lists, ... and it uses the Unity's PlayerPrefs under the hood.

⁉ How to use :

Use the same syntaxe as PlayerPrefs.

■ Booleans :

//Load
bool b = PlayerPrefsExtra.GetBool("mybool", false);

//Update (flip value)
b = !b;

//Save
PlayerPrefsExtra.SetBool("mybool", b);

■ Vectors ( Vector2, Vector3, and Vector4 ):

//Load
Vector2 v = PlayerPrefsExtra.GetVector2("myV2", Vector2.zero);

//Update
v+=Vector2.one;

//Save
PlayerPrefsExtra.SetVector2("myV2", v);

■ Colors :

// Get color
Color c = PlayerPrefsExtra.GetColor("Col");

// Set color
PlayerPrefsExtra.SetColor("Col", Color.red);

■ Quaternions :

// Get Quaternion
Quaternion qua = PlayerPrefsExtra.GetQuaternion("q");

//Set Quaternion
PlayerPrefsExtra.SetQuaternion("q", qua);

■ Lists :

// Get List
List<float> list = PlayerPrefsExtra.GetList<float>("myList", new List<float>());

// Add data to List
list.Add(Random.Range(100,900);

// Save List
PlayerPrefsExtra.SetList("myList", list);

■ Objects :

//Class
[System.Serializable]
public class Shape{
	public int totalPoints = 3;
	public float strokeWidth = 0f;
	public List<Vector3> points = new List<Vector3>();
}
// Get object
Shape s = PlayerPrefsExtra.GetObject<Shape>("myShape", new Shape());

// Update object data
s.strokeWidth++;
s.points.Add(Vector3.one*Random.Range(0f,3f));

// Save object
PlayerPrefsExtra.SetObject("myShape", s);

■ Delete All Keys (both PlayerPrefs & PlayerPrefsExtra) :

use PlayerPrefs instead of PlayerPrefsExtra

PlayerPrefs.DeleteAll();

■ Delete one key :

use PlayerPrefs instead of PlayerPrefsExtra

PlayerPrefs.DeleteKey("Key");

■ Check key existance :

use PlayerPrefs instead of PlayerPrefsExtra

PlayerPrefs.HasKey("Key");




❤️ Donate

Paypal