My Ores, Trees and plants work fine but when i try shooting/triggering water or workbenches it doesn’t detect them…
what could be the problem?
RaycastHit hit;
Vector3 fwd = transform.TransformDirection(Vector3.forward);
Ray ray = pCamera.ScreenPointToRay(new Vector3(200, 200, 0));
Debug.DrawRay(ray.origin, ray.direction * 10, Color.yellow);
if(Physics.Raycast(pCamera.transform.position, fwd,out hit, range)) {
if(hit.collider.gameObject.tag == "Ore") {
if(Input.GetButtonUp("Action")) {
hit.collider.gameObject.SendMessage("CheckLevel", SM.level, SendMessageOptions.RequireReceiver);
hit.collider.gameObject.SendMessage("Mine", _name, SendMessageOptions.RequireReceiver);
}
}
if(hit.collider.tag == "Tree") {
if(Input.GetButtonUp("Action")) {
hit.collider.gameObject.SendMessage("CheckLevel", SWc.level, SendMessageOptions.RequireReceiver);
hit.collider.gameObject.SendMessage("Chop", _name, SendMessageOptions.RequireReceiver);
}
}
if(hit.collider.tag == "Plant") {
if(Input.GetButtonUp("Action")) {
hit.collider.gameObject.SendMessage("CheckLevel", SFa.level, SendMessageOptions.RequireReceiver);
hit.collider.gameObject.SendMessage("Harvest", _name, SendMessageOptions.RequireReceiver);
}
}
if(hit.collider.tag == "Workbench") {
if(Input.GetButtonUp("Action")) {
hit.collider.gameObject.SendMessage("CheckCLevel", SCra.level, SendMessageOptions.RequireReceiver);
hit.collider.gameObject.SendMessage("CheckSLevel", SS.level, SendMessageOptions.RequireReceiver);
hit.collider.gameObject.SendMessage("Stone", _stone, SendMessageOptions.RequireReceiver);
hit.collider.gameObject.SendMessage("Wood", _wood, SendMessageOptions.RequireReceiver);
hit.collider.gameObject.SendMessage("Activate", _name, SendMessageOptions.RequireReceiver);
}
}
if(hit.collider.tag == "Loot") {
if(Input.GetButtonUp("Action")) {
hit.collider.gameObject.SendMessage("Pickup", _name, SendMessageOptions.RequireReceiver);
}
}
if(hit.collider.tag == "Liquid") {
if(Input.GetButtonUp("Action")) {
if(tool == "Fishing_Rod") {
hit.collider.gameObject.SendMessage("CheckLevel", SFi.level, SendMessageOptions.RequireReceiver);
hit.collider.gameObject.SendMessage("Fish", _name, SendMessageOptions.RequireReceiver);
}
else {
hit.collider.gameObject.SendMessage("Drink", _name, SendMessageOptions.RequireReceiver);
}
}
}
if(hit.collider == null) {
if(Input.GetButtonUp("Action")) {
Debug.Log("No collider found!");
return;
}
}
}