Example #1
0
    public List <PropDate> propList; //道具

    public void CreatPropDateInstantiate(PropDate propDate)
    {                                                                                                                    //读取到数据后实例化该道具
        PropDate prop = Instantiate(propPrefab, Vector3.zero, propPrefab.transform.rotation).GetComponent <PropDate> (); //实例化,用于数据持久化

        prop.transform.parent = transform;                                                                               //放置该实例化物体到管理物体下
        prop.Index            = propDate.Index;                                                                          //输入编号
        prop.prop             = propDate.prop;                                                                           //0为不存在 1为存在
        prop.number           = propDate.number;                                                                         //数量
        prop.gameObject.name  = "Prop" + prop.Index;                                                                     //命名
        propList.Add(prop);                                                                                              //加入到链表中
    }
Example #2
0
 private void WritePropDate()
 {                                          //保存道具数据
     for (int i = 0; i < 20; i++)
     {                                      //创造20个数据
         PropDate prop = new PropDate();    //实例化,用于数据持久化
         prop.Index  = i;
         prop.prop   = 1;                   //0为不存在 1为存在
         prop.type   = Random.Range(1, 50); //种类编号
         prop.number = Random.Range(1, 50); //数量
         saveDate.SaveProp(prop);
     }
 }
Example #3
0
 private void LoadPropDate()
 {                                              //道具加载
     for (int i = 0; i <= 999; i++)
     {                                          //遍历从0-999的编号
         if (PlayerPrefs.HasKey("Prop" + i))
         {                                      //如果该key存在数据,则加载
             PropDate newProp = new PropDate(); //new 一个用于储存数据的
             newProp.Index  = i;
             newProp.prop   = 1;                //0为不存在 1为存在
             newProp.type   = PlayerPrefs.GetInt("PropType" + i);
             newProp.number = PlayerPrefs.GetInt("PropNumber" + i);
             propDateManager.CreatPropDateInstantiate(newProp);
         }
     }
 }
Example #4
0
    //*************道具类 0~999  计量的

    /*Prop
     * PropType
     * PropNumber
     *
     */
    public void SaveProp(PropDate propDate)
    {    //保存道具数据
        int index = propDate.Index;

        if (propDate.prop == 0)
        {                                                //说明不存在需要清空数据
            PlayerPrefs.DeleteKey("Prop" + index);       //清除数据
            PlayerPrefs.DeleteKey("PropType" + index);   //清除数据
            PlayerPrefs.DeleteKey("PropNumber" + index); //清除数据
        }
        else
        {
            PlayerPrefs.SetInt("Prop" + index, 1);                     //保存道具存在标志位
            PlayerPrefs.SetInt("PropType" + index, propDate.type);     //保存种类编号
            PlayerPrefs.SetInt("PropNumber" + index, propDate.number); //保存数量
        }
    }