当前位置: 首页 > news >正文

php mysql网站开发长沙服务好的网络营销

php mysql网站开发,长沙服务好的网络营销,可信赖的顺的网站建设,大连网站搜索排名Unity 数据存储PlayerPrefs管理类 Unity 数据存储PlayerPrefs管理类实现存取实体类对象存储格式为Json格式Singleton.csInventoryEntity.csDataManager.cs用法如下 Unity 数据存储PlayerPrefs管理类 实现存取实体类对象 存储格式为Json格式 源码如下: Singleton…

Unity 数据存储PlayerPrefs管理类

  • Unity 数据存储PlayerPrefs管理类
    • 实现存取实体类对象
    • 存储格式为Json格式
    • Singleton.cs
    • InventoryEntity.cs
    • DataManager.cs
    • 用法如下

Unity 数据存储PlayerPrefs管理类

实现存取实体类对象

存储格式为Json格式

源码如下:

Singleton.cs


//单例模板
public class Singleton<T> where T : new()
{private static T _Instance;public static T Instance{get{if (_Instance == null){_Instance = new T();}return _Instance;}}public Singleton(){}
}

InventoryEntity.cs

/// <summary>
/// 实体类
/// </summary>
public class InventoryEntity {/// <summary>/// 金币/// </summary>public int coins = 0;/// <summary>/// 钻石/// </summary>public int gams = 0;/// <summary>/// 关卡/// </summary>public int Levels = 1;public InventoryEntity(){}public InventoryEntity(int coin, int gam, int level){this.coins = coin;this.gams = gam;this.Levels = level;}
}

DataManager.cs

using UnityEngine;public class DataManager : Singleton<DataManager>
{/// <summary>/// 保存数据/// </summary>InventoryEntity m_Inventory;/// <summary>/// 初始化字典/// </summary>public void Init(){m_Inventory = GetObjectData<InventoryEntity>("data");}#region 人物ID读写/// <summary>/// 记录人物ID/// </summary>private string m_playerId = "";/// <summary>/// 设置人物ID/// </summary>/// <param name="id"></param>public void SetID(string id){m_playerId = id;}/// <summary>/// 获取人物ID/// </summary>/// <returns></returns>public string GetID(){return m_playerId;}#endregion#region 测试该存储#region 修改方法/// <summary>/// 修改金币/// </summary>public void SetCoins(int coin){m_Inventory.coins = coin;SaveObjectDate("data", m_Inventory);}/// <summary>/// 获取金币/// </summary>public int GetCoins(){return m_Inventory.coins;}/// <summary>/// 修改宝石/// </summary>public void SetGams(int gam){m_Inventory.gams = gam;SaveObjectDate("data", m_Inventory);}/// <summary>/// 获取宝石/// </summary>public int GetGams(){return m_Inventory.gams;}/// <summary>/// 修改关卡/// </summary>public void SetLevels(int level){m_Inventory.Levels = level;SaveObjectDate("data", m_Inventory);}/// <summary>/// 获取关卡/// </summary>public int GetLevels(){return m_Inventory.Levels;}/// <summary>/// 修改全部属性/// </summary>public void SetAll(int coin, int gam, int level){m_Inventory.coins = coin;m_Inventory.gams = gam;m_Inventory.Levels = level;SaveObjectDate("data", m_Inventory);}/// <summary>/// 修改全部属性重载/// </summary>public void SetAll(InventoryEntity entity){m_Inventory = entity;SaveObjectDate("data", m_Inventory);}/// <summary>/// 奖励使用逻辑/// </summary>public void SetAward(int awardcoin, int awardgam, int awardlevel){m_Inventory.coins += awardcoin;m_Inventory.gams += awardgam;m_Inventory.Levels += awardlevel;SaveObjectDate("data", m_Inventory);}#endregion#endregion#region 泛型存取数据/// <summary>/// 存储指定类型/// </summary>public void SaveObjectDate<T>(string key, T t, bool common = false){if (common){PlayerPrefs.SetString(key, JsonUtility.ToJson(t));}else{PlayerPrefs.SetString(m_playerId + key, JsonUtility.ToJson(t));}PlayerPrefs.Save();}/// <summary>/// 获取指定类型/// </summary>/// <typeparam name="T"></typeparam>/// <param name="key"></param>/// <param name="common"></param>/// <returns></returns>public T GetObjectData<T>(string key, bool common = false) where T : new(){string Data = null;if (common){Data = PlayerPrefs.GetString(key, null);}else{Data = PlayerPrefs.GetString(m_playerId + key, null);}if (string.IsNullOrEmpty(Data)){return new T();}else{return JsonUtility.FromJson<T>(Data);}}#endregion#region 存取数据/// <summary>/// 存储int类型/// </summary>public void SaveIntDate(string key,int num, bool common = false){if (common){PlayerPrefs.SetInt(key,num);}else{PlayerPrefs.SetInt(m_playerId + key, num);}PlayerPrefs.Save();}/// <summary>/// 获取int类型/// </summary>/// <typeparam name="T"></typeparam>/// <param name="key"></param>/// <param name="common"></param>/// <returns></returns>public int GetIntData<T>(string key, bool common = false) where T : new(){if (common){return PlayerPrefs.GetInt(key, -1);}else{return PlayerPrefs.GetInt(m_playerId + key, -1);}}/// <summary>/// 存储Float类型/// </summary>public void SaveFloatDate(string key, float num, bool common = false){if (common){PlayerPrefs.SetFloat(key, num);}else{PlayerPrefs.SetFloat(m_playerId + key, num);}PlayerPrefs.Save();}/// <summary>/// 获取Float类型/// </summary>/// <typeparam name="T"></typeparam>/// <param name="key"></param>/// <param name="common"></param>/// <returns></returns>public float GetFloatData(string key, bool common = false){if (common){return PlayerPrefs.GetFloat(key, -1);}else{return PlayerPrefs.GetFloat(m_playerId + key, -1);}}/// <summary>/// 存储Bool类型/// </summary>public void SaveBoolDate(string key, bool boolean, bool common = false){if (common){PlayerPrefs.SetInt(key, boolean ? 1 : 0);}else{PlayerPrefs.SetInt(m_playerId + key, boolean ? 1 : 0);}PlayerPrefs.Save();}/// <summary>/// 获取Bool类型/// </summary>/// <typeparam name="T"></typeparam>/// <param name="key"></param>/// <param name="common"></param>/// <returns></returns>public bool GetBoolData(string key, bool common = false){int? boolean = null;if (common){boolean = PlayerPrefs.GetInt(key, -1);}else{boolean = PlayerPrefs.GetInt(m_playerId + key, -1);}if (boolean == 1) return true;else return false;}/// <summary>/// 存储Bool类型/// </summary>public void SaveStrDate(string key, string str, bool common = false){if (common){PlayerPrefs.SetString(key, str);}else{PlayerPrefs.SetString(m_playerId + key, str);}PlayerPrefs.Save();}/// <summary>/// 获取Bool类型/// </summary>/// <typeparam name="T"></typeparam>/// <param name="key"></param>/// <param name="common"></param>/// <returns></returns>public string GetStrData(string key, bool common = false){if (common){return PlayerPrefs.GetString(key, "");}else{return PlayerPrefs.GetString(m_playerId + key, "");}}#endregion}

用法如下

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class DataTest : MonoBehaviour {// Use this for initializationvoid Start () {DataManager.Instance.Init();Debug.LogError("金币"+DataManager.Instance.GetCoins());Debug.LogError("宝石"+DataManager.Instance.GetGams());Debug.LogError("关卡" + DataManager.Instance.GetLevels());DataManager.Instance.SetAward(10,20,3);}}
http://www.hotlads.com/news/1885.html

相关文章:

  • 南京网站制作招聘环球资源网站网址
  • 最适合女生的专业排名关键词优化资讯
  • 可以自己做网站服务器不sem推广和seo的区别
  • 检测网站开发语言哈尔滨seo整站优化
  • 合肥市网站建设合肥seo排名收费
  • seo网站排名优化公司哪家搜狗网页版入口
  • asp做网站和dw的区别搜索引擎的使用方法和技巧
  • 武汉做网站的知名公司重庆今天刚刚发生的重大新闻
  • 如何用ps做网站设计图沈阳seo整站优化
  • 什么样的资质做电子商务网站盘古百度推广靠谱吗
  • 做电影平台网站怎么赚钱吗2021年网络营销案例
  • 网站可视化设计百度指数移动版怎么用
  • 手机网站模版长沙网站优化推广
  • 邢台做网站优化建网站需要什么条件
  • 兰州网站建设cheng南昌seo服务
  • 武汉网站建设哪家好软文广告图片
  • 学校网站建设开发商四大营销策略
  • 用织梦做的网站怎样看免费注册公司
  • 邵阳做网站中国企业500强排行榜
  • 做网站怎样备案推广效果最好的平台
  • 常见的动态网站开发技术seo软件资源
  • python做流量网站微信朋友圈软文大全
  • 网站seo外链怎么做如何制作企业网站
  • 免费网站内页模板 css搜索引擎推广的方法有
  • 百度自助网站建设模拟搜索点击软件
  • 深圳集团网站建设报价网上推广赚钱方法
  • 坪山做网站的公司网站推广优化外链
  • 网站建设的公司青岛专业网站制作
  • 个人网站做淘客广州百度推广电话
  • 做flash网站遇到函数腾讯广告代理