You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			158 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			C#
		
	
			
		
		
	
	
			158 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			C#
		
	
| namespace MagicaVoxelToolbox.Saving {
 | |
| 
 | |
| 	using UnityEngine;
 | |
| 
 | |
| 
 | |
| 	public class SavingBool : Saving<bool> {
 | |
| 
 | |
| 		public SavingBool (string key, bool defaultValue) : base(key, defaultValue) { }
 | |
| 
 | |
| 		protected override bool GetValueFromPref () {
 | |
| 			return PlayerPrefs.GetInt(Key, DefaultValue ? 1 : 0) == 1;
 | |
| 		}
 | |
| 
 | |
| 		protected override void SetValueToPref () {
 | |
| 			PlayerPrefs.SetInt(Key, Value ? 1 : 0);
 | |
| 		}
 | |
| 
 | |
| 		public static implicit operator bool (SavingBool value) {
 | |
| 			return value.Value;
 | |
| 		}
 | |
| 
 | |
| 
 | |
| 	}
 | |
| 
 | |
| 
 | |
| 	public class SavingInt : Saving<int> {
 | |
| 
 | |
| 		public SavingInt (string key, int defaultValue) : base(key, defaultValue) { }
 | |
| 
 | |
| 		protected override int GetValueFromPref () {
 | |
| 			return PlayerPrefs.GetInt(Key, DefaultValue);
 | |
| 		}
 | |
| 
 | |
| 		protected override void SetValueToPref () {
 | |
| 			PlayerPrefs.SetInt(Key, Value);
 | |
| 		}
 | |
| 
 | |
| 		public static implicit operator int (SavingInt value) {
 | |
| 			return value.Value;
 | |
| 		}
 | |
| 
 | |
| 	}
 | |
| 
 | |
| 
 | |
| 	public class SavingString : Saving<string> {
 | |
| 
 | |
| 		public SavingString (string key, string defaultValue) : base(key, defaultValue) { }
 | |
| 
 | |
| 		protected override string GetValueFromPref () {
 | |
| 			return PlayerPrefs.GetString(Key, DefaultValue);
 | |
| 		}
 | |
| 
 | |
| 		protected override void SetValueToPref () {
 | |
| 			PlayerPrefs.SetString(Key, Value);
 | |
| 		}
 | |
| 
 | |
| 		public static implicit operator string (SavingString value) {
 | |
| 			return value.Value;
 | |
| 		}
 | |
| 
 | |
| 	}
 | |
| 
 | |
| 
 | |
| 	public class SavingFloat : Saving<float> {
 | |
| 
 | |
| 		public SavingFloat (string key, float defaultValue) : base(key, defaultValue) { }
 | |
| 
 | |
| 		protected override float GetValueFromPref () {
 | |
| 			return PlayerPrefs.GetFloat(Key, DefaultValue);
 | |
| 		}
 | |
| 
 | |
| 		protected override void SetValueToPref () {
 | |
| 			PlayerPrefs.SetFloat(Key, Value);
 | |
| 		}
 | |
| 
 | |
| 		public static implicit operator float (SavingFloat value) {
 | |
| 			return value.Value;
 | |
| 		}
 | |
| 
 | |
| 	}
 | |
| 
 | |
| 
 | |
| 	public class SavingVector2 : Saving<Vector2> {
 | |
| 
 | |
| 		public SavingVector2 (string key, Vector2 defaultValue) : base(key, defaultValue) { }
 | |
| 
 | |
| 		protected override Vector2 GetValueFromPref () {
 | |
| 			return new Vector2(
 | |
| 				PlayerPrefs.GetFloat(Key + ".x", DefaultValue.x),
 | |
| 				PlayerPrefs.GetFloat(Key + ".y", DefaultValue.y)
 | |
| 			);
 | |
| 		}
 | |
| 
 | |
| 		protected override void SetValueToPref () {
 | |
| 			PlayerPrefs.SetFloat(Key + ".x", Value.x);
 | |
| 			PlayerPrefs.SetFloat(Key + ".y", Value.y);
 | |
| 		}
 | |
| 
 | |
| 		public static implicit operator Vector2 (SavingVector2 value) {
 | |
| 			return value.Value;
 | |
| 		}
 | |
| 
 | |
| 	}
 | |
| 
 | |
| 
 | |
| 	public class SavingVector3 : Saving<Vector3> {
 | |
| 
 | |
| 		public SavingVector3 (string key, Vector3 defaultValue) : base(key, defaultValue) { }
 | |
| 
 | |
| 		protected override Vector3 GetValueFromPref () {
 | |
| 			return new Vector3(
 | |
| 				PlayerPrefs.GetFloat(Key + ".x", DefaultValue.x),
 | |
| 				PlayerPrefs.GetFloat(Key + ".y", DefaultValue.y),
 | |
| 				PlayerPrefs.GetFloat(Key + ".z", DefaultValue.z)
 | |
| 			);
 | |
| 		}
 | |
| 
 | |
| 		protected override void SetValueToPref () {
 | |
| 			PlayerPrefs.SetFloat(Key + ".x", Value.x);
 | |
| 			PlayerPrefs.SetFloat(Key + ".y", Value.y);
 | |
| 			PlayerPrefs.SetFloat(Key + ".z", Value.z);
 | |
| 		}
 | |
| 
 | |
| 		public static implicit operator Vector3 (SavingVector3 value) {
 | |
| 			return value.Value;
 | |
| 		}
 | |
| 
 | |
| 	}
 | |
| 
 | |
| 
 | |
| 	public class SavingColor : Saving<Color> {
 | |
| 
 | |
| 		public SavingColor (string key, Color defaultValue) : base(key, defaultValue) { }
 | |
| 
 | |
| 		protected override Color GetValueFromPref () {
 | |
| 			return new Color(
 | |
| 				PlayerPrefs.GetFloat(Key + ".r", DefaultValue.r),
 | |
| 				PlayerPrefs.GetFloat(Key + ".g", DefaultValue.g),
 | |
| 				PlayerPrefs.GetFloat(Key + ".b", DefaultValue.b),
 | |
| 				PlayerPrefs.GetFloat(Key + ".a", DefaultValue.a)
 | |
| 			);
 | |
| 		}
 | |
| 
 | |
| 		protected override void SetValueToPref () {
 | |
| 			PlayerPrefs.SetFloat(Key + ".r", Value.r);
 | |
| 			PlayerPrefs.SetFloat(Key + ".g", Value.g);
 | |
| 			PlayerPrefs.SetFloat(Key + ".b", Value.b);
 | |
| 			PlayerPrefs.SetFloat(Key + ".a", Value.a);
 | |
| 		}
 | |
| 
 | |
| 		public static implicit operator Color (SavingColor value) {
 | |
| 			return value.Value;
 | |
| 		}
 | |
| 
 | |
| 	}
 | |
| 
 | |
| 
 | |
| } |