Пример #1
0
 // Unequip the currently Active item, if one exists
 private void UnequipActiveItem()
 {
     if (ActiveItem != null)
     {
         ActiveItem.transform.SetParent(_itemRoot);
         ActiveItem.gameObject.SetActive(false);
         ItemUnEquipped?.Invoke(ActiveItem);
     }
 }
Пример #2
0
        public void Equip(IItem item)
        {
            if (ActiveItem != null)
            {
                ActiveItem.transform.SetParent(_itemRoot);
                ActiveItem.gameObject.SetActive(false);
                ItemUnEquipped?.Invoke(ActiveItem);
            }
            Debug.Log($"Equipped Item: {item.gameObject.name}");

            item.transform.SetParent(rightHand);
            item.transform.localPosition = Vector3.zero;
            item.transform.localRotation = Quaternion.identity;

            ActiveItem = item;
            ActiveItem.gameObject.SetActive(true);
            ActiveItemChanged?.Invoke(ActiveItem);
            ItemEquipped?.Invoke(item);
        }