/** TODO * - zeby loot dalo sie zebrac dopiero jak upadnie z pociagu na ziemie * - zeby nie dalo sie wchodzic na pociag * - zeby w okienku na gorze bylo widac ikonki typow lootu i ile ich mamy * - zeby player ginal przy zderzeniu z pociagiem */ void OnTriggerStay(Collider collider) { Debug.Log(collider.name); if (collider.tag == "Pickable") { Debug.Log("pickable"); if (Input.GetButton("Use")) { GameObject itemObject = collider.transform.gameObject; AbsPickable pickable = collider.GetComponentInParent <AbsPickable> (); if (pickable is AbsItem) { bool wasItemPickedUp = inventoryBuilder.AddItemToInventory(itemObject); if (wasItemPickedUp) { pickable.OnBeingPicked(); InfoPanelManager.AddNewMessage(Strings.pickUpItem + pickable.GetName()); } } } AbsLoot loot = collider.GetComponentInParent <AbsLoot> (); if (loot != null) { Debug.Log("with loot"); loot.OnBeingPicked(); lootInventoryBuilder.PutLoot(loot); InfoPanelManager.AddNewMessage(Strings.pickUpLoot + loot.GetName()); } } }
public void RemoveItemFromInventory(AbsItem item) { InfoPanelManager.AddNewMessage(Strings.dropItem + item.GetName()); if (leftHand.GetComponent <InventoryButtonScript>().GetAssociatedItem() == item) { RemoveAssociatedItemFromHand(leftHand); } if (rightHand.GetComponent <InventoryButtonScript>().GetAssociatedItem() == item) { RemoveAssociatedItemFromHand(rightHand); } foreach (GameObject itemObject in pickedUpObjects) { if (itemObject.GetComponent <AbsItem>() == item) { itemObject.GetComponent <AbsItem>().OnBeingThrown(); itemObject.transform.SetParent(null, true); pickedUpObjects.Remove(itemObject); return; } } }