예제 #1
0
        public void OnPointerClick(PointerEventData eventData)
        {
            var description = !string.Equals(_containerImage.sprite.name, UIConstants.ItemContainerDefaultSpriteName, StringComparison.CurrentCultureIgnoreCase) ? _containerImage.sprite.name.ToUpperInvariant() + "_DESCRIPTION" : string.Empty;

            GameObjectUtilities.FindGameObject("Game/Canvas/ItemPanel/ItemContainer_Inventory").GetComponent <ItemContainerBehaviour>().TryGetItem(out var inventory);
            if (_moveItem)
            {
                if (inventory && inventory.Id == _moveItem.Id)
                {
                    if (_moveItemContainer != null)
                    {
                        if (TryGetItem(out var containerItem) == false)
                        {
                            PlayerCommands.DropItem(_moveItem.Id, ContainerIndex);
                        }
                        else
                        {
                            PlayerCommands.SwapInventoryItem(containerItem.Id, ContainerIndex, _moveItem.Id);
                        }
                    }
                    else
                    {
                        if (TryGetItem(out var containerItem) == false)
                        {
                            PlayerCommands.DropAndActivateItem(_moveItem.Id, ContainerIndex);
                        }
                        else
                        {
                            PlayerCommands.SwapAndActivateInventoryItem(containerItem.Id, ContainerIndex, _moveItem.Id);
                        }
                    }
예제 #2
0
 private void Take(ItemContainerBehaviour container)
 {
     if (!IsInvoking(nameof(DisableOptions)) && !IsInvoking("EnableOptions"))
     {
         if (GameObjectUtilities.FindGameObject("Game/Canvas/ItemPanel/ItemContainer_Inventory").GetComponent <ItemContainerBehaviour>().TryGetItem(out var inventory))
         {
             PlayerCommands.SwapInventoryItem(Id, container.ContainerIndex, inventory.Id);
         }
         else
         {
             PlayerCommands.PickupItem(Id);
         }
     }
 }