| 
									
										
										
										
											2022-05-23 13:39:59 +00:00
										 |  |  |  | using System; | 
					
						
							|  |  |  |  | using System.Collections; | 
					
						
							|  |  |  |  | using System.Collections.Generic; | 
					
						
							|  |  |  |  | using UnityEngine; | 
					
						
							|  |  |  |  | using Touka; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | public class TKGUtils | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// 是否首次触达某个事件 | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="_key"></param> | 
					
						
							|  |  |  |  |     /// <returns></returns> | 
					
						
							|  |  |  |  |     public static bool IfFirstCheckPlayerPrefs(string _key) | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         var isFirstClick = GetPlayerPrefsIntByKey(_key) == 0; | 
					
						
							|  |  |  |  |         SavePlayerPrefsIntByKeyValue(_key, 1); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         return isFirstClick; | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// 本地存int | 
					
						
							|  |  |  |  |     /// | 
					
						
							|  |  |  |  |     /// key 内部拼接了前缀:Touka_ | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="_key"></param> | 
					
						
							|  |  |  |  |     /// <param name="_defaultValue"></param> | 
					
						
							|  |  |  |  |     /// <returns></returns> | 
					
						
							|  |  |  |  |     public static int GetPlayerPrefsIntByKey(string _key, int _defaultValue = 0) | 
					
						
							|  |  |  |  |     { | 
					
						
							| 
									
										
										
										
											2022-08-30 02:21:29 +00:00
										 |  |  |  |         int value = PlayerPrefs.GetInt(string.Format("{0}{1}", TKGStringPlayerPrefs.TOUKA_PREFIX, _key), _defaultValue); | 
					
						
							| 
									
										
										
										
											2022-05-23 13:39:59 +00:00
										 |  |  |  |         return value; | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// 本地取int | 
					
						
							|  |  |  |  |     /// | 
					
						
							|  |  |  |  |     /// key 内部拼接了前缀:Touka_ | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="_key"></param> | 
					
						
							|  |  |  |  |     /// <param name="_newValue"></param> | 
					
						
							|  |  |  |  |     public static void SavePlayerPrefsIntByKeyValue(string _key, int _newValue) | 
					
						
							|  |  |  |  |     { | 
					
						
							| 
									
										
										
										
											2022-08-30 02:21:29 +00:00
										 |  |  |  |         PlayerPrefs.SetInt(string.Format("{0}{1}", TKGStringPlayerPrefs.TOUKA_PREFIX, _key), _newValue); | 
					
						
							| 
									
										
										
										
											2022-05-23 13:39:59 +00:00
										 |  |  |  |         PlayerPrefs.Save(); | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// 本地存string | 
					
						
							|  |  |  |  |     /// | 
					
						
							|  |  |  |  |     /// key 内部拼接了前缀:Touka_ | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="_key"></param> | 
					
						
							|  |  |  |  |     /// <param name="_defaultValue"></param> | 
					
						
							|  |  |  |  |     /// <returns></returns> | 
					
						
							|  |  |  |  |     public static string GetPlayerPrefsStringByKey(string _key, string _defaultValue = "") | 
					
						
							|  |  |  |  |     { | 
					
						
							| 
									
										
										
										
											2022-08-30 02:21:29 +00:00
										 |  |  |  |         string value = PlayerPrefs.GetString(string.Format("{0}{1}", TKGStringPlayerPrefs.TOUKA_PREFIX, _key), _defaultValue); | 
					
						
							| 
									
										
										
										
											2022-05-23 13:39:59 +00:00
										 |  |  |  |         return value; | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// 本地取string | 
					
						
							|  |  |  |  |     /// | 
					
						
							|  |  |  |  |     /// key 内部拼接了前缀:Touka_ | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="_key"></param> | 
					
						
							|  |  |  |  |     /// <param name="_newValue"></param> | 
					
						
							|  |  |  |  |     public static void SavePlayerPrefsStringByKeyValue(string _key, string _newValue) | 
					
						
							|  |  |  |  |     { | 
					
						
							| 
									
										
										
										
											2022-08-30 02:21:29 +00:00
										 |  |  |  |         PlayerPrefs.SetString(string.Format("{0}{1}", TKGStringPlayerPrefs.TOUKA_PREFIX, _key), _newValue); | 
					
						
							| 
									
										
										
										
											2022-05-23 13:39:59 +00:00
										 |  |  |  |         PlayerPrefs.Save(); | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// 缓存当前时间 | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="_key"></param> | 
					
						
							|  |  |  |  |     public static void SaveCurrTime2PlayerPrefs(string _key) | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         DateTime date1 = DateTime.Now; | 
					
						
							|  |  |  |  |         string s1 = date1.ToString(); | 
					
						
							|  |  |  |  |         SavePlayerPrefsStringByKeyValue(_key, s1); | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// 缓存本地时间为string | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="_key"></param> | 
					
						
							|  |  |  |  |     /// <param name="_dateStr"></param> | 
					
						
							|  |  |  |  |     public static void SaveCurrTime2PlayerPrefsWithStringDate(string _key, string _dateStr) | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         SavePlayerPrefsStringByKeyValue(_key, _dateStr); | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// 取出缓存string时间为 DateTime | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="_key"></param> | 
					
						
							|  |  |  |  |     /// <returns></returns> | 
					
						
							|  |  |  |  |     public static DateTime GetDateTimeFromPlayerPrefs(string _key) | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         string firstDateValue = GetPlayerPrefsStringByKey(_key); | 
					
						
							|  |  |  |  |         if (string.IsNullOrEmpty(firstDateValue)) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return new DateTime(1990, 1, 1, 0, 0, 0); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         DateTime dateOld = Convert.ToDateTime(firstDateValue); | 
					
						
							|  |  |  |  |         return dateOld; | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// equal double | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="a"></param> | 
					
						
							|  |  |  |  |     /// <param name="b"></param> | 
					
						
							|  |  |  |  |     /// <returns></returns> | 
					
						
							|  |  |  |  |     public static bool equalDouble(double a, double b) | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         if ((a - b > -0.000001) && (a - b) < 0.000001) | 
					
						
							|  |  |  |  |             return true; | 
					
						
							|  |  |  |  |         else | 
					
						
							|  |  |  |  |             return false; | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// Floats the equal. | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <returns><c>true</c>, if equal was floated, <c>false</c> otherwise.</returns> | 
					
						
							|  |  |  |  |     /// <param name="a">The alpha component.</param> | 
					
						
							|  |  |  |  |     /// <param name="b">The blue component.</param> | 
					
						
							|  |  |  |  |     public static bool FloatEqual(float a, float b) | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         if ((a - b > -0.000001) && (a - b) < 0.000001) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return true; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         else | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return false; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-08-30 02:21:29 +00:00
										 |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// Get Today data str | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <returns></returns> | 
					
						
							| 
									
										
										
										
											2022-05-23 13:39:59 +00:00
										 |  |  |  |     public static string GetTodayDataStr() | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         string timeStr = DateTime.Now.ToString("yyyy-MM-dd"); | 
					
						
							|  |  |  |  |         return timeStr; | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-08-30 02:21:29 +00:00
										 |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// Open Browser Url | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     /// <param name="_url"></param> | 
					
						
							| 
									
										
										
										
											2022-05-23 13:39:59 +00:00
										 |  |  |  |     public static void OpenBrowserUrl(string _url) | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         Application.OpenURL(_url); | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | } |