private void UpdateTooltipUI(bool active, IPickupableItem pickup) { tooltipPanel.SetActive(active); if (active) { tooltipText.text = pickup.ItemInfo.GetTooltip("E"); } }
private bool FindNearbyPickup(out IPickupableItem pickup) { Ray ray = playerCamera.ViewportPointToRay(cameraCenter); if (Physics.Raycast(ray, out RaycastHit hitInfo, interactionRadius)) { return(hitInfo.collider.TryGetComponent(out pickup)); } pickup = null; return(false); }
private void PickItem(IPickupableItem pickup) { bool itemPicked = inventorySystem.AddItem(pickup.ItemInfo, pickup.Amount); if (itemPicked) { playerManager.OnPickupCollected(pickup.ItemInfo, pickup.Amount); pickup.OnItemPicked(); } else { Debug.LogWarning($"Can't pick up item [{pickup.ItemInfo.Name}], inventory is full!"); } }