Esempio n. 1
0
        public void PickupWithRaycast()
        {
            RaycastHit hit = new RaycastHit();

            if (Physics.Raycast(playerCamera.transform.position, playerCamera.transform.forward, out hit, raycastPickupDistance))
            {
                if (itemNameTooltip)
                {
                    itemNameTooltip.text = string.Empty;
                }

                if (hit.collider.CompareTag("Item") && hit.collider.GetComponent <Item>() != null)
                {
                    var item = hit.collider.GetComponent <Item>();

                    if (itemNameTooltip)
                    {
                        if (item.stackable)
                        {
                            itemNameTooltip.text = string.Format("{0}x{1}", item.title, item.stackSize);
                        }
                        else
                        {
                            itemNameTooltip.text = string.Format("{0}", item.title);
                        }
                    }

                    if (Input.GetKeyDown(pickupKey))
                    {
                        inventory.AddItem(hit.collider.GetComponent <Item>());
                    }
                }

                if (hit.collider.CompareTag("LootBox") && hit.collider.GetComponent <LootBox>() != null && !InventoryManager.showInventory)
                {
                    if (itemNameTooltip)
                    {
                        itemNameTooltip.text = "Search";
                    }

                    if (Input.GetKeyDown(pickupKey))
                    {
                        inventory.SearchLootBox(hit.collider.GetComponent <LootBox>());
                    }
                }
            }
            else
            {
                if (itemNameTooltip != null && itemNameTooltip.text != string.Empty)
                {
                    itemNameTooltip.text = string.Empty;
                }
            }
        }