zoukankan      html  css  js  c++  java
  • Unity3D之储存背包界面里面的物品

    1存储:遍历整个背包的格子。将有子物体的格子给储存下来

      public void SaveInventory()
        {
            StringBuilder sb = new StringBuilder();
            foreach (Slot slot in slotList)
            {
                if (slot.transform.childCount > 0)
                {
                    ItemUI itemUI = slot.transform.GetChild(0).GetComponent<ItemUI>();
                    sb.Append(itemUI.Item.ID + ","+itemUI.Amount+"-");
                }
                else
                {
                    sb.Append("0-");
                }
            }
            PlayerPrefs.SetString(this.gameObject.name, sb.ToString());
        }

    2加载:

    public void LoadInventory()
        {
            if (PlayerPrefs.HasKey(this.gameObject.name) == false) return;
            string str = PlayerPrefs.GetString(this.gameObject.name);
            //print(str);
            string[] itemArray = str.Split('-');
            for (int i = 0; i < itemArray.Length-1; i++)
            {
                string itemStr = itemArray[i];
                if (itemStr != "0")
                {
                    //print(itemStr);
                    string[] temp = itemStr.Split(',');
                    int id = int.Parse(temp[0]);
                    Item item = InventoryManager.Instance.GetItemById(id);
                    int amount = int.Parse(temp[1]);
                    for (int j = 0; j < amount; j++)
                    {
                        slotList[i].StoreItem(item);
                    }
                }
            }
        }

  • 相关阅读:
    i'm all geared up
    android设置主题和自定义主题的方法
    &和&&的区别
    兼容IE与Firefox的js 复制代码
    实用的注册表单验证代码
    常用JavaScript属性和方法
    400多个JavaScript特效大全
    float引起层飘出父层的解决方法
    JavaScript常见兼容性处理
    多种方法实现checkbox全选、取消全选、删除功能
  • 原文地址:https://www.cnblogs.com/weiqiangwaideshijie/p/6841762.html
Copyright © 2011-2022 走看看