示例#1
0
        public void MarkOccupied(ItemWeaponBase weaponItem)
        {
            itemIcon.sprite     = weaponItem.image;
            button.interactable = false;
            itemIcon.gameObject.SetActive(true);

            var iconColor = itemIcon.color;

            iconColor.a = 0.5f;

            itemIcon.color = iconColor;

            equippedItem = null;
        }
        public void SetEquippedWeapon(ItemWeaponBase itemWeapon)
        {
            Transform weaponRestSpot = null;

            if (itemWeapon.equipmentSlot == ItemEquipment.EquipmentSlot.WeaponRightHand)
            {
                var itemWeaponRgihtHand = itemWeapon as ItemWeapon;

                if (itemWeaponRgihtHand.isTwoHandedWeapon)
                {
                    weaponRestSpot = twoHandedWeaponRestSlot;
                }
                else
                {
                    weaponRestSpot = oneHandWeaponRestSlot;
                }
            }
            else if (itemWeapon.equipmentSlot == ItemEquipment.EquipmentSlot.WeaponLeftHand)
            {
                weaponRestSpot = shieldRestSlot;
            }

            var weaponInstance = Instantiate(itemWeapon.weaponModel, weaponRestSpot.position, weaponRestSpot.rotation);


            if (itemWeapon.equipmentSlot == ItemEquipment.EquipmentSlot.WeaponLeftHand)
            {
                equippedShield = weaponInstance;
            }
            else
            {
                equippedWeapon = weaponInstance;
            }

            weaponInstance.transform.SetParent(weaponRestSpot);
        }