private void HoldToMineProgress() { holdToMineTimerElapsed += Time.deltaTime; if (holdToMineTimerElapsed >= holdToMineTimer) { crystal++; Destroy(itemBeingPickedUp.gameObject); itemBeingPickedUp = null; mineSlider.gameObject.SetActive(false); } }
private void SelectItemBeingPickedUpFromRay() { Ray ray = camera.ViewportPointToRay(Vector3.one / 2f); Debug.DrawRay(ray.origin, ray.direction * 4f, Color.red); RaycastHit hitInfo; if (Physics.Raycast(ray, out hitInfo, 4f)) { var hitItem = hitInfo.collider.GetComponent <ResorcePickup>(); if (hitItem == null) { itemBeingPickedUp = null; } else if (hitItem != null && hitItem != itemBeingPickedUp) { itemBeingPickedUp = hitItem; if (itemBeingPickedUp.tag != "Crystal" && itemBeingPickedUp.tag != "Water" && itemBeingPickedUp.tag != "CraftingTable") { pickUpMessage.text = "(E) Pick Up: " + itemBeingPickedUp.gameObject.name; } else if (itemBeingPickedUp.tag == "Crystal") { if (pickaxeEquipped == true) { pickUpMessage.text = "(Hold LMB) Mine Crystal"; } else { pickUpMessage.text = "Needs a Pickaxe"; } } else if (itemBeingPickedUp.tag == "Water") { pickUpMessage.text = "(Hold E) Drink Water"; } else if (itemBeingPickedUp.tag == "CraftingTable") { pickUpMessage.text = "(E) Open Crafting Menu"; } } } else { itemBeingPickedUp = null; } }
void Update() { if (crafting.pickaxeCrafted == false) { pickaxeIcon.SetActive(false); } else { pickaxeIcon.SetActive(true); } #region UI Stuff woodText.text = wood.ToString(); stoneText.text = stone.ToString(); foodText.text = food.ToString(); crystalText.text = crystal.ToString(); mineBar.maxValue = holdToMineTimer; mineBar.value = holdToMineTimerElapsed; if (wood > 999) { wood = 999; } if (stone > 999) { stone = 999; } if (food > 999) { food = 999; } if (crystal > 999) { crystal = 999; } #endregion SelectItemBeingPickedUpFromRay(); if (HasItemTargetted()) { pickUpMessage.gameObject.SetActive(true); if (Input.GetKeyDown(KeyCode.E)) { if (itemBeingPickedUp.tag == "Wood") { wood++; Destroy(itemBeingPickedUp.gameObject); itemBeingPickedUp = null; } else if (itemBeingPickedUp.tag == "Stone") { stone++; Destroy(itemBeingPickedUp.gameObject); itemBeingPickedUp = null; } else if (itemBeingPickedUp.tag == "Food") { food++; Destroy(itemBeingPickedUp.gameObject); itemBeingPickedUp = null; } else if (itemBeingPickedUp.tag == "CraftingTable") { crafting.CraftingOpen(); } } if (Input.GetButton("Fire1")) { if (itemBeingPickedUp.tag == "Crystal") { if (pickaxeEquipped == true) { mineSlider.gameObject.SetActive(true); HoldToMineProgress(); } else { Debug.Log("Needs a pickaxe equipped"); } } } if (Input.GetKey(KeyCode.E)) { if (itemBeingPickedUp.tag == "Water") { stats.currentThirst += drinkSpeed * Time.deltaTime; } } } else { pickUpMessage.gameObject.SetActive(false); mineSlider.gameObject.SetActive(false); } if (Input.GetButtonUp("Fire1")) { holdToMineTimerElapsed = 0f; mineSlider.gameObject.SetActive(false); } if (Input.GetKeyDown(KeyCode.Q) && crafting.pickaxeCrafted == true && pickaxeEquipped == false) { EquipPickaxe(); } else if (Input.GetKeyDown(KeyCode.Q) && crafting.pickaxeCrafted == true && pickaxeEquipped == true) { UnequipPickaxe(); } //Opening and Closing Map }