public void Exchange(ItemUi itemUi) { Item item = itemUi.ItemObject; int amount = itemUi.Amount; itemUi.SetItem(this.ItemObject, this.Amount); this.SetItem(item, amount); }
private void OnTriggerEnter2D(Collider2D collision) { if (collision.CompareTag("Item")) { ItemUi itemUi = collision.GetComponent <ItemUi>(); itemUi.GetItem(); } }
public override void OnPointerDown(UnityEngine.EventSystems.PointerEventData eventData) { if (eventData.button == UnityEngine.EventSystems.PointerEventData.InputButton.Left) { if (InventoryManager.Instance.IsPickedItem) { if (transform.childCount > 0) { ItemUi currentItem = transform.GetChild(0).GetComponent <ItemUi>(); if (IsRightItem(InventoryManager.Instance.PickedItem.ItemObject)) { InventoryManager.Instance.PickedItem.Exchange(currentItem); } } else { if (IsRightItem(InventoryManager.Instance.PickedItem.ItemObject)) { DisplayItemInEmpty(); } } } else { if (transform.childCount > 0) { ItemUi item = transform.GetChild(0).GetComponent <ItemUi>(); InventoryManager.Instance.PickUpItem(item.ItemObject); Destroy(transform.GetChild(0).gameObject); } } } else if (eventData.button == UnityEngine.EventSystems.PointerEventData.InputButton.Right) { if (transform.childCount > 0 && InventoryManager.Instance.IsPickedItem == false) { ItemUi currentItem = transform.GetChild(0).GetComponent <ItemUi>(); Item current = currentItem.ItemObject; Destroy(currentItem.gameObject); transform.parent.parent.SendMessage("PutOff", current); InventoryManager.Instance.HideToolTip(); } } }
public virtual void OnPointerDown(PointerEventData eventData) { if (eventData.button == PointerEventData.InputButton.Left) { if (transform.childCount > 0) { ItemUi currentItem = transform.GetChild(0).GetComponent <ItemUi>(); if (!InventoryManager.Instance.IsPickedItem) { if (Input.GetKey(KeyCode.LeftControl)) { int amountPicked = (currentItem.Amount + 1) / 2; InventoryManager.Instance.PickUpItem(currentItem.ItemObject, amountPicked); int amountRemained = currentItem.Amount - amountPicked; if (amountRemained <= 0) { Destroy(currentItem.gameObject); } else { currentItem.SetAmount(amountRemained); } } else { InventoryManager.Instance.PickUpItem(currentItem.ItemObject, currentItem.Amount); Destroy(currentItem.gameObject); } } else { if (currentItem.ItemObject.Id == InventoryManager.Instance.PickedItem.ItemObject.Id) { if (Input.GetKey(KeyCode.LeftControl)) { if (currentItem.ItemObject.Capacity > currentItem.Amount) { currentItem.AddAmount(); InventoryManager.Instance.RemoveItem(); } else { return; } } else { if (currentItem.ItemObject.Capacity > currentItem.Amount) { int amountRemain = currentItem.ItemObject.Capacity - currentItem.Amount; if (amountRemain > InventoryManager.Instance.PickedItem.Amount) { currentItem.AddAmount(InventoryManager.Instance.PickedItem.Amount); InventoryManager.Instance.RemoveItem(InventoryManager.Instance.PickedItem.Amount); } else { currentItem.SetAmount(currentItem.ItemObject.Capacity); InventoryManager.Instance.RemoveItem(amountRemain); } } else { return; } } } else { currentItem.Exchange(InventoryManager.Instance.PickedItem); } } } else { if (InventoryManager.Instance.IsPickedItem == true) { if (Input.GetKey(KeyCode.LeftControl)) { DisplayItemInEmpty(); } else { for (int i = 0; i < InventoryManager.Instance.PickedItem.Amount; i++) { this.StoreItem(InventoryManager.Instance.PickedItem.ItemObject); } InventoryManager.Instance.RemoveItem(InventoryManager.Instance.PickedItem.Amount); } } else { return; } } } else if (eventData.button == PointerEventData.InputButton.Right) { if (transform.childCount > 0 && InventoryManager.Instance.IsPickedItem == false) { ItemUi currentItem = transform.GetChild(0).GetComponent <ItemUi>(); if (currentItem.ItemObject is Equipment || currentItem.ItemObject is Weapon) { Item current = currentItem.ItemObject; currentItem.AddAmount(-1); if (currentItem.Amount <= 0) { DestroyImmediate(currentItem.gameObject); InventoryManager.Instance.HideToolTip(); } Character.Instance.PutOn(current); } } } }
public bool IsFiled() { ItemUi itemUi = transform.GetChild(0).GetComponent <ItemUi>(); return(itemUi.Amount >= itemUi.ItemObject.Capacity); }
private void itemButton_Click(object sender, EventArgs e) { ItemUi itemUi = new ItemUi(); itemUi.Show(); }