Example #1
0
    public void PickUp()
    {
        int       id        = Random.Range(1001, 1020); //随机生成物品
        Inventory inventory = null;

        Dict.TryGetValue(id, out inventory);
        if (inventory.InvenType == InventoryType.Equip)  //获得的是装备
        {
            InventoryDB inventoryDB = new InventoryDB();
            inventoryDB.InventoryId = id;
            inventoryDB.Num         = 1;
            inventoryDB.Level       = Random.Range(1, 11); //随机生成等级
            inventoryDB.IsDress     = false;
            inventoryDBController.AddInventoryDB(inventoryDB);
        }
        else  //获得的不是装备
        {
            InventoryItem it     = null;
            bool          isExit = false;
            foreach (InventoryItem temp in mList)  //先判断背包里面是否已经存在物品
            {
                if (temp.Inventory.Id == id)
                {
                    isExit = true;
                    it     = temp;
                    break;
                }
            }
            if (isExit)  //背包已经存在
            {
                it.Num++;
                inventoryDBController.UpgradeEquipment(it.InventoryDB);  //UpgradeEquipment可以用作UpdataInventoryDB
            }
            else  //背包不存在
            {
                InventoryDB inventoryDB = new InventoryDB();
                inventoryDB.InventoryId = id;
                inventoryDB.Num         = 1;
                inventoryDB.Level       = 0; //随机生成等级
                inventoryDB.IsDress     = false;
                inventoryDBController.AddInventoryDB(inventoryDB);
            }
        }
    }