{"id":570,"date":"2011-02-13T12:08:17","date_gmt":"2011-02-13T12:08:17","guid":{"rendered":""},"modified":"2013-02-27T12:05:12","modified_gmt":"2013-02-27T04:05:12","slug":"570","status":"publish","type":"post","link":"https:\/\/1vr.cn\/?p=570","title":{"rendered":"Unity\u4e2d\u4fdd\u5b58\u6216\u8bfb\u53d6\u6570\u7ec4\u7684\u65b9\u6cd5"},"content":{"rendered":"<p>Unity\u672c\u8eab\u6709PlayerPrefs\u6765\u505a\u4e00\u4e9b\u6570\u636e\u7684\u4fdd\u5b58\u548c\u8bfb\u53d6,\u4e5f\u53ef\u4ee5\u901a\u8fc7\u5faa\u73af\u6765\u505a\u6279\u91cf\u7684\u8bfb\u53d6\u6216\u8005\u4fdd\u5b58,\u4e0b\u9762\u8fd9\u4e2a\u811a\u672c\u53ef\u4ee5\u65b9\u4fbf\u7684\u8c03\u7528\u7528\u6765\u505a\u4e0a\u9762\u6279\u91cf\u7684\u5de5\u4f5c,\u6bd4\u5982\u8bfb\u53d6\u4e00\u7ec4\u6587\u672c\u6570\u7ec4\u6570\u636e\u548c\u4fdd\u5b58\u4e00\u7ec4\u6587\u672c\u6570\u7ec4\u6570\u636e.<\/p>\n<p>\u5efa\u8bae\u628a\u8fd9\u4e2a\u811a\u672c\u653e\u5728Standard Assets\u76ee\u5f55\u4e0b,\u8fd9\u6837\u53ef\u4ee5\u6309\u7167\u4e0b\u9762\u7684\u65b9\u6cd5\u65b9\u4fbf\u7684\u8c03\u7528\u5b83.\u73b0\u5728\u5305\u542b\u4e86\u4e0b\u9762\u8fd9\u4e9b\u547d\u4ee4:<\/p>\n<ul> <\/p>\n<li>PlayerPrefsX.SetVector3 <br \/>PlayerPrefsX.GetVector3<br \/>PlayerPrefsX.SetIntArray<br \/>PlayerPrefsX.GetIntArray<br \/>PlayerPrefsX.SetFloatArray<br \/>PlayerPrefsX.GetFloatArray<br \/>PlayerPrefsX.SetStringArray<br \/>PlayerPrefsX.GetStringArray<\/li>\n<\/ul>\n<p><strong>\u4fdd\u5b58\u4e00\u4e2a\u5411\u91cf<\/strong><br \/>static function SetVector3 (key : string, value : Vector3) : boolean <br \/><code>\/\/\u5c1d\u8bd5\u4fdd\u5b58\u4e00\u4e2a\u7269\u4f53\u4f4d\u7f6e<br \/>var player : GameObject;<br \/>if (!PlayerPrefsX.SetVector3(\"PlayerPosition\", player.transform.position))<br \/>print(\"\u4e0d\u80fd\u4fdd\u5b58\u7269\u4f53\u4f4d\u7f6e!\");<\/code><\/p>\n<p>\u6210\u529f\u8fd4\u56de\u771f,\u5426\u5219\u5047(\u4f8b\u5982\u7528Webplayer\u4fdd\u5b58\u8d85\u8fc71M\u6570\u636e\u7684\u65f6\u5019).<\/p>\n<p><strong>\u83b7\u5f97\u4e00\u4e2a\u5411\u91cf<\/strong><br \/><code>var player : GameObject;<br \/>player.transform.position = PlayerPrefsX.GetVector3(\"PlayerPosition\");<\/code><\/p>\n<p>\u5982\u679c\u8bfb\u53d6\u7684\u5411\u91cf\u5b58\u5728\u7684\u8bdd\u5c06\u4f1a\u8fd4\u56de\u8fd9\u4e2a\u5411\u91cf\u503c.<\/p>\n<p><strong>\u4fdd\u5b58\u4e00\u7ec4\u6574\u578b\u6570\u636e<\/strong><br \/><code>\/\/\u5f53\u4fdd\u5b58Scores\u547d\u540d\u7684\u5206\u6570\u65f6\u5019\u521b\u5efa\u4e00\u4e2a10\u6210\u5458\u6570\u7ec4<br \/>var myScores = new int[10];<br \/>for (i = 0; i &lt; myScores.Length; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;myScores[i] = i+1;<br \/>if (!PlayerPrefsX.SetIntArray(\"Scores\", myScores))<br \/> print(\"\u4e0d\u80fd\u4fdd\u5b58\u5206\u6570!\");<\/code><\/p>\n<p><strong>\u83b7\u5f97\u4e00\u7ec4\u6574\u578b\u6570\u636e<\/strong><br \/>static function GetIntArray (key : string) : int[] <br \/>\u5982\u679c\u5b58\u5728\u5c06\u8fd4\u56de\u8fd9\u7ec4\u6570\u636e,\u5426\u5219\u5c06\u8fd4\u56deint[0];<br \/><code>var scores = PlayerPrefsX.GetIntArray(\"Scores\");<\/code><br \/>static function GetIntArray (key : string, defaultValue : int, defaultSize : int) : int[] <br \/>\u5982\u679c\u4e0d\u5b58\u5728\u8fd9\u7ec4\u6570\u636e,\u5c06\u8fd4\u56de\u6307\u5b9a\u957f\u5ea6\u7684\u6570\u7ec4\u4ee5\u53ca\u6bcf\u4e2a\u6210\u5458\u90fd\u4f1a\u8d4b\u4e88\u9ed8\u8ba4\u503c.<\/p>\n<p>\u5176\u4ed6\u51fd\u6570\u7684\u4f7f\u7528\u65b9\u6cd5:<br \/>static function SetFloatArray (key : string, value : float[]) : boolean <br \/>static function GetFloatArray (key : string) : float[] <br \/>static function GetFloatArray (key : string, defaultValue : float, defaultSize : int) : float[] <br \/>static function SetStringArray (key : string, value : String[]) : boolean <br \/>static function SetStringArray (key : string, value : String[], separator : char) : boolean <br \/>static function GetStringArray (key : string) : string[]<br \/>static function GetStringArray (key : string, separator : char) : string[] <br \/>static function GetStringArray (key : string, defaultValue : String, defaultSize : int) : string[]<br \/>static function GetStringArray (key : string, separator : char, defaultValue : String, defaultSize : int) : string[] <\/p>\n<p>\u8be5\u811a\u672c\u7684Javascript\u7248:<br \/><code>\/\/ Site of this script: <a href=\"http:\/\/www.unifycommunity.com\/wiki\/index.php?title=ArrayPrefs\" target=\"_blank\" rel=\"external\">http:\/\/www.unifycommunity.com\/wiki\/index.php?title=ArrayPrefs<\/a><\/p>\n<p>\/\/ Created by: Eric Haines (Eric5h5)<br \/>\/\/ Contribution (Set\/Get Vector3) 03\/2010: Mario Madureira Fontes (fontmaster)<\/p>\n<p>static function SetVector3 (key : String, vector : Vector3) : boolean {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return SetFloatArray(key, [vector.x, vector.y, vector.z]);<br \/>}<\/p>\n<p>static function GetVector3 (key : String) : Vector3 {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;var floatArray = GetFloatArray(key);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (floatArray.Length &lt; 3) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return Vector3.zero;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return Vector3(floatArray[0], floatArray[1], floatArray[2]);<br \/>}<\/p>\n<p>static function SetIntArray (key : String, intArray : int[]) : boolean {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (intArray.Length == 0) return false;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;var sb = new System.Text.StringBuilder();<br \/>&nbsp;&nbsp;&nbsp;&nbsp;for (i = 0; i &lt; intArray.Length-1; i++) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(intArray[i]).Append(\"|\");<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(intArray[i]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;try {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PlayerPrefs.SetString(key, sb.ToString());<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;catch (err) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return true;<br \/>}<\/p>\n<p>static function GetIntArray (key : String) : int[] {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key)) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var stringArray = PlayerPrefs.GetString(key).Split(\"|\"[0]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var intArray = new int[stringArray.Length];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (i = 0; i &lt; stringArray.Length; i++) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;intArray[i] = parseInt(stringArray[i]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return intArray;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return new int[0];<br \/>}<\/p>\n<p>static function GetIntArray (key : String, defaultValue : int, defaultSize : int) : int[] {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key)) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return GetIntArray(key);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;var intArray = new int[defaultSize];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;for (i = 0; i &lt; defaultSize; i++) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;intArray[i] = defaultValue;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return intArray;<br \/>}<\/p>\n<p>static function SetFloatArray (key : String, floatArray : float[]) : boolean {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (floatArray.Length == 0) return false;<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;var sb = new System.Text.StringBuilder();<br \/>&nbsp;&nbsp;&nbsp;&nbsp;for (i = 0; i &lt; floatArray.Length-1; i++) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(floatArray[i]).Append(\"|\");<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(floatArray[i]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;try {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PlayerPrefs.SetString(key, sb.ToString());<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;catch (err) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return true;<br \/>}<\/p>\n<p>static function GetFloatArray (key : String) : float[] {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key)) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var stringArray = PlayerPrefs.GetString(key).Split(\"|\"[0]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var floatArray = new float[stringArray.Length];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (i = 0; i &lt; stringArray.Length; i++) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;floatArray[i] = parseFloat(stringArray[i]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return floatArray;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return new float[0];<br \/>}<\/p>\n<p>static function GetFloatArray (key : String, defaultValue : float, defaultSize : int) : float[] {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key)) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return GetFloatArray(key);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;var floatArray = new float[defaultSize];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;for (i = 0; i &lt; defaultSize; i++) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;floatArray[i] = defaultValue;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return floatArray;<br \/>}<\/p>\n<p>static function SetStringArray (key : String, stringArray : String[], separator : char) : boolean {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (stringArray.Length == 0) return false;<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;try {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PlayerPrefs.SetString(key, String.Join(separator.ToString(), stringArray));<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;catch (err) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return true;<br \/>}<\/p>\n<p>static function SetStringArray (key : String, stringArray : String[]) : boolean {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (!SetStringArray(key, stringArray, \"<br \/>\n\"[0])) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return true;<br \/>}<\/p>\n<p>static function GetStringArray (key : String, separator : char) : String[] {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key)) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return PlayerPrefs.GetString(key).Split(separator);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return new String[0];<br \/>}<\/p>\n<p>static function GetStringArray (key : String) : String[] {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key)) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return PlayerPrefs.GetString(key).Split(\"<br \/>\n\"[0]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return new String[0];<br \/>}<\/p>\n<p>static function GetStringArray (key : String, separator : char, defaultValue : String, defaultSize : int) : String[] {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key)) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return PlayerPrefs.GetString(key).Split(separator);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;var stringArray = new String[defaultSize];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;for (i = 0; i &lt; defaultSize; i++) {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stringArray[i] = defaultValue;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return stringArray;<br \/>}<\/p>\n<p>static function GetStringArray (key : String, defaultValue : String, defaultSize : int) : String[] {<br \/>&nbsp;&nbsp;&nbsp;&nbsp;return GetStringArray(key, \"<br \/>\n\"[0], defaultValue, defaultSize);<\/p>\n<p>}<br \/><\/code><\/p>\n<p>\u811a\u672c\u7684C#\u7248<br \/><code>\/\/ Contribution (Created CSharp Version) 10\/2010: Daniel P. Rossi (DR9885)<br \/>\/\/ Contribution (Created Bool Array) 10\/2010: Daniel P. Rossi (DR9885)<br \/>\/\/ Contribution (Made functions public) 01\/2011: Bren<\/p>\n<p>using UnityEngine;<br \/>using System;<\/p>\n<p>public static class PlayerPrefsX<br \/>{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;#region Vector 3<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Stores a Vector3 value into a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static bool SetVector3(string key, Vector3 vector)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return SetFloatArray(key, new float[3] { vector.x, vector.y, vector.z });<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Finds a Vector3 value from a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static Vector3 GetVector3(string key)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;float[] floatArray = GetFloatArray(key);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (floatArray.Length &lt; 3)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return Vector3.zero;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new Vector3(floatArray[0], floatArray[1], floatArray[2]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#endregion<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#region Bool Array<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Stores a Bool Array or Multiple Parameters into a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static bool SetBoolArray(string key, params bool[] boolArray)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (boolArray.Length == 0) return false;<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.Text.StringBuilder sb = new System.Text.StringBuilder();<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; boolArray.Length - 1; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(boolArray[i]).Append(\"|\");<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(boolArray[boolArray.Length - 1]);<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try { PlayerPrefs.SetString(key, sb.ToString()); }<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;catch (Exception e) { return false; }<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return true;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a Bool Array from a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static bool[] GetBoolArray(string key)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string[] stringArray = PlayerPrefs.GetString(key).Split(\"|\"[0]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bool[] boolArray = new bool[stringArray.Length];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; stringArray.Length; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boolArray[i] = Convert.ToBoolean(stringArray[i]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return boolArray;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new bool[0];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a Bool Array from a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Note: Uses default values to initialize if no key was found<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static bool[] GetBoolArray(string key, bool defaultValue, int defaultSize)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return GetBoolArray(key);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bool[] boolArray = new bool[defaultSize];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; defaultSize; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boolArray[i] = defaultValue;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return boolArray;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#endregion<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#region Int Array<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Stores a Int Array or Multiple Parameters into a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static bool SetIntArray(string key, params int[] intArray)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (intArray.Length == 0) return false;<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.Text.StringBuilder sb = new System.Text.StringBuilder();<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; intArray.Length - 1; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(intArray[i]).Append(\"|\");<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(intArray[intArray.Length - 1]);<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try { PlayerPrefs.SetString(key, sb.ToString()); }<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;catch (Exception e) { return false; }<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return true;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a Int Array from a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static int[] GetIntArray(string key)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string[] stringArray = PlayerPrefs.GetString(key).Split(\"|\"[0]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int[] intArray = new int[stringArray.Length];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; stringArray.Length; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;intArray[i] = Convert.ToInt32(stringArray[i]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return intArray;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new int[0];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a Int Array from a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Note: Uses default values to initialize if no key was found<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static int[] GetIntArray(string key, int defaultValue, int defaultSize)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return GetIntArray(key);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int[] intArray = new int[defaultSize];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; defaultSize; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;intArray[i] = defaultValue;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return intArray;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#endregion<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#region Float Array<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Stores a Float Array or Multiple Parameters into a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static bool SetFloatArray(string key, params float[] floatArray)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (floatArray.Length == 0) return false;<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.Text.StringBuilder sb = new System.Text.StringBuilder();<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; floatArray.Length - 1; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(floatArray[i]).Append(\"|\");<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.Append(floatArray[floatArray.Length - 1]);<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PlayerPrefs.SetString(key, sb.ToString());<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;catch (Exception e)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return true;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a Float Array from a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static float[] GetFloatArray(string key)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string[] stringArray = PlayerPrefs.GetString(key).Split(\"|\"[0]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;float[] floatArray = new float[stringArray.Length];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; stringArray.Length; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;floatArray[i] = Convert.ToSingle(stringArray[i]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return floatArray;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new float[0];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a String Array from a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Note: Uses default values to initialize if no key was found<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static float[] GetFloatArray(string key, float defaultValue, int defaultSize)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return GetFloatArray(key);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;float[] floatArray = new float[defaultSize];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; defaultSize; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;floatArray[i] = defaultValue;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return floatArray;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#endregion<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#region String Array<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Stores a String Array or Multiple Parameters into a Key w\/ specific char seperator<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static bool SetStringArray(string key, char separator, params string[] stringArray)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (stringArray.Length == 0) return false;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ PlayerPrefs.SetString(key, String.Join(separator.ToString(), stringArray)); }<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;catch (Exception e)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ return false; }<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return true;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Stores a Bool Array or Multiple Parameters into a Key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static bool SetStringArray(string key, params string[] stringArray)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (!SetStringArray(key, \"<br \/>\n\"[0], stringArray))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return true;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a String Array from a key & char seperator<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static string[] GetStringArray(string key, char separator)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return PlayerPrefs.GetString(key).Split(separator);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new string[0];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a Bool Array from a key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static string[] GetStringArray(string key)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return PlayerPrefs.GetString(key).Split(\"<br \/>\n\"[0]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new string[0];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a String Array from a key & char seperator<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Note: Uses default values to initialize if no key was found<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static string[] GetStringArray(string key, char separator, string defaultValue, int defaultSize)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (PlayerPrefs.HasKey(key))<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return PlayerPrefs.GetString(key).Split(separator);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string[] stringArray = new string[defaultSize];<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; defaultSize; i++)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stringArray[i] = defaultValue;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return stringArray;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Returns a String Array from a key<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ Note: Uses default values to initialize if no key was found<br \/>&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/ &lt;\/summary&gt;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;public static String[] GetStringArray(string key, string defaultValue, int defaultSize)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return GetStringArray(key, \"<br \/>\n\"[0], defaultValue, defaultSize);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#endregion<br \/>}<br \/> <\/code><\/p>\n<p>\u8f6c\u8f7d\u8bf7\u6ce8\u660e\u6765\u81ea1Vr.Cn<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Unity\u672c\u8eab\u6709PlayerPrefs\u6765\u505a\u4e00\u4e9b\u6570\u636e\u7684\u4fdd\u5b58\u548c\u8bfb\u53d6,\u4e5f\u53ef\u4ee5\u901a\u8fc7\u5faa\u73af\u6765\u505a\u6279\u91cf\u7684\u8bfb\u53d6\u6216\u8005\u4fdd\u5b58,\u4e0b\u9762\u8fd9\u4e2a &hellip; <a href=\"https:\/\/1vr.cn\/?p=570\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Unity\u4e2d\u4fdd\u5b58\u6216\u8bfb\u53d6\u6570\u7ec4\u7684\u65b9\u6cd5<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-570","post","type-post","status-publish","format-standard","hentry","without-featured-image"],"_links":{"self":[{"href":"https:\/\/1vr.cn\/index.php?rest_route=\/wp\/v2\/posts\/570","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/1vr.cn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/1vr.cn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/1vr.cn\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/1vr.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=570"}],"version-history":[{"count":1,"href":"https:\/\/1vr.cn\/index.php?rest_route=\/wp\/v2\/posts\/570\/revisions"}],"predecessor-version":[{"id":700,"href":"https:\/\/1vr.cn\/index.php?rest_route=\/wp\/v2\/posts\/570\/revisions\/700"}],"wp:attachment":[{"href":"https:\/\/1vr.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=570"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/1vr.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=570"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/1vr.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=570"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}