private bool SelectedObject() { //If the ray hits an object or hitInfo is up to date if (RaycastHandler.Update()) { if (RaycastHandler.HitInfo.transform.gameObject == gameObject) { // if same object is select, toggle if it is selected objectIsSelected = !objectIsSelected; if (objectIsSelected) { //which local gameobject is the owner selectedOwner = transform.GetInstanceID(); } else { selectedOwner = 0; } SetActivePlayerLocator(objectIsSelected); } else if (RaycastHandler.HitInfo.transform.gameObject.GetComponent <Pathfinding>()) { //hit another object with pathfinding, unselect the selected object objectIsSelected = false; } } return(objectIsSelected); }
private Vector3?GetPositionFromMouseClick() { if (RaycastHandler.Update()) { if (ExtendLayerMask.NotGroundMask(RaycastHandler.HitInfo.transform.gameObject.layer)) { return(RaycastHandler.HitInfo.point); } } return(null); }
private bool setPositionFromMouseClick() { //If the ray hits an object if (RaycastHandler.Update()) { if (ExtendLayerMask.NotGroundMask(RaycastHandler.HitInfo.transform.gameObject.layer)) { targetPosition = RaycastHandler.HitInfo.point; return(true); } } return(false); }
/// <summary> /// Get direction of mouse click /// </summary> /// <param name="direction"></param> /// <returns></returns> private bool GetDirectionOfMouseClick(ref Vector3 direction) { if (Input.GetMouseButtonDown(0)) { if (RaycastHandler.Update()) { Vector3 g = RaycastHandler.HitInfo.point; var heading = RaycastHandler.HitInfo.point - transform.position; var distance = heading.magnitude; direction = heading / distance; return(true); } } return(false); }