예제 #1
0
    public void storeItem(int ItemID)      //根据ID存储物品
    {
        if (!ItemList.ContainsKey(ItemID)) //如果列表中不存在键值为ItemID的物品则返回
        {
            return;
        }
        Items      temp       = ItemList[ItemID];                            //取出物品
        GameObject itemPrefab = Resources.Load <GameObject>("prefabs/Item"); //加载出指定路径的prefab并且赋给一个游戏物体

        Transform emptyGrid = Empty.GetEmptyItem();                          //得到空格子

        if (emptyGrid == null)
        {
            Debug.Log("No Empty");
            return;
        }                                                       //没有空格子则返回
        GameObject ItemGo = GameObject.Instantiate(itemPrefab); //实例化被赋值的游戏物体

        ItemGo.GetComponent <ItemUI>().upDateItem(temp.Name);   //得到取出的物品身上的脚本组件调用里面的更新name方法

        ItemGo.transform.SetParent(emptyGrid);                  //设置父物体为空格子
        ItemGo.transform.localPosition = Vector3.zero;
        ItemGo.transform.localScale    = Vector3.zero;
        ItemGo.transform.localScale    = new Vector3(1, 1, 0); //不设置默认为0

        ItemModel.storeData(emptyGrid.name, temp);             //存储随机出的Item的数据
    }
예제 #2
0
    public void storeItem(int ItemID)      //根据ID存储物品和数据
    {
        //得到指定ID的物品和空格子
        if (!PackageItemList.ContainsKey(ItemID))      //如果列表中不存在键值为ItemID的物品则返回
        {
            return;
        }
        Items     temp      = PackageItemList[ItemID]; //取出物品
        Transform emptyGrid = Empty.GetEmptyItem();    //得到空格子

        if (emptyGrid == null)
        {
            Debug.Log("No Empty");
            return;
        }              //没有空格子则返回

        //根据物品名称和指定格子创建新的物品创建并存储数据
        CreatNewItem(temp, emptyGrid);
    }