Esempio n. 1
0
        /// <summary>
        /// 背包系统点击装备后传过来的值
        /// </summary>
        /// <param name="item"></param>
        public void OnKanapcapInventoryItemClick(InventoryItem item, InventoryItemUI itemUI)
        {
            InventoryItem itemClick = item;
            //需要将当前穿好的装备保存下来 以便于脱下来
            InventoryItem itemDressed = null;

            //需要判定装备类型,执行一些特殊操作
            switch (itemClick.Inventory.EquipTYPE)
            {
            case EquipType.Helm:
                if (HelmItemUI.IsDressed)
                {
                    itemDressed           = HelmItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                HelmItemUI.SetCurrentInventory(itemClick);
                break;

            case EquipType.Cloth:
                if (ClothItemUI.IsDressed)
                {
                    itemDressed           = ClothItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                ClothItemUI.SetCurrentInventory(itemClick);
                break;

            case EquipType.Weapon:
                if (WeaponItemUI.IsDressed)
                {
                    itemDressed           = WeaponItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                WeaponItemUI.SetCurrentInventory(itemClick);
                break;

            case EquipType.Shoes:
                if (ShoesItemUI.IsDressed)
                {
                    itemDressed           = ShoesItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                ShoesItemUI.SetCurrentInventory(itemClick);
                break;

            case EquipType.Necklace:
                if (NecklaceItemUI.IsDressed)
                {
                    itemDressed           = NecklaceItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                NecklaceItemUI.SetCurrentInventory(itemClick);
                break;

            case EquipType.Bracelet:
                if (BraceleItemUI.IsDressed)
                {
                    itemDressed           = BraceleItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                BraceleItemUI.SetCurrentInventory(itemClick);
                break;

            case EquipType.Ring:
                if (RingItemUI.IsDressed)
                {
                    itemDressed           = RingItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                RingItemUI.SetCurrentInventory(itemClick);
                break;

            case EquipType.Wing:
                if (WingItemUI.IsDressed)
                {
                    itemDressed           = WingItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                WingItemUI.SetCurrentInventory(itemClick);
                break;

            case EquipType.JadePendantLeft:
                if (JadePendantLeftItemUI.IsDressed)
                {
                    itemDressed           = JadePendantLeftItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                JadePendantLeftItemUI.SetCurrentInventory(itemClick);
                break;

            case EquipType.JadePendantRight:
                if (JadePendantRightItemUI.IsDressed)
                {
                    itemDressed           = JadePendantRightItemUI.CurrentInventory;
                    itemDressed.IsDressed = false;  //表示当前装备为未穿上的标记
                }
                JadePendantRightItemUI.SetCurrentInventory(itemClick);
                break;

            default:
                break;
            }
            //玩家装备上装备属性增加
            PlayerInfo.Instance.EquipDressOn(item);
            if (itemDressed == null)//如果为空表示当前没有穿上任何东西
            {
                itemUI.Clear();
            }
            else//当前已经穿上装备,把脱下的装备放到背包里
            {
                itemUI.SetCurrentInventory(itemDressed);
                //玩家脱下上装备属性减少
                PlayerInfo.Instance.EquipDressOn(itemDressed);
            }
        }