164 lines
4.5 KiB
C#
164 lines
4.5 KiB
C#
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)
|
||
{
|
||
int value = PlayerPrefs.GetInt(string.Format("{0}{1}", TKGStringPlayerPrefs.TOUKA_PREFIX, _key), _defaultValue);
|
||
return value;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 本地取int
|
||
///
|
||
/// key 内部拼接了前缀:Touka_
|
||
/// </summary>
|
||
/// <param name="_key"></param>
|
||
/// <param name="_newValue"></param>
|
||
public static void SavePlayerPrefsIntByKeyValue(string _key, int _newValue)
|
||
{
|
||
PlayerPrefs.SetInt(string.Format("{0}{1}", TKGStringPlayerPrefs.TOUKA_PREFIX, _key), _newValue);
|
||
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 = "")
|
||
{
|
||
string value = PlayerPrefs.GetString(string.Format("{0}{1}", TKGStringPlayerPrefs.TOUKA_PREFIX, _key), _defaultValue);
|
||
return value;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 本地取string
|
||
///
|
||
/// key 内部拼接了前缀:Touka_
|
||
/// </summary>
|
||
/// <param name="_key"></param>
|
||
/// <param name="_newValue"></param>
|
||
public static void SavePlayerPrefsStringByKeyValue(string _key, string _newValue)
|
||
{
|
||
PlayerPrefs.SetString(string.Format("{0}{1}", TKGStringPlayerPrefs.TOUKA_PREFIX, _key), _newValue);
|
||
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;
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Get Today data str
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
public static string GetTodayDataStr()
|
||
{
|
||
string timeStr = DateTime.Now.ToString("yyyy-MM-dd");
|
||
return timeStr;
|
||
}
|
||
|
||
/// <summary>
|
||
/// Open Browser Url
|
||
/// </summary>
|
||
/// <param name="_url"></param>
|
||
public static void OpenBrowserUrl(string _url)
|
||
{
|
||
Application.OpenURL(_url);
|
||
}
|
||
|
||
} |