void SelectTarget(RaycastHit h) { ISelectableTarget trg = h.collider.gameObject.GetComponent <ISelectableTarget>(); if (trg != null) { GUIManager gui = GUIManager.instance; gui.trgDist.text = Mathf.CeilToInt((transform.position - h.transform.position).magnitude * 4f).ToString() + "м"; gui.trgName.text = trg.GetName(); gui.trgSpd.text = (h.collider.gameObject.GetComponent <Rigidbody>().velocity.magnitude * 4f).ToString() + "мс"; if (selectedTarget) { selectedTarget = null; Destroy(selMarker); } selectedTarget = h.collider.gameObject; selMarker = selectedTarget.AddComponent <SelectionMarker>(); selMarker.markerFab = selectionMarkerFab; audiosource.PlayOneShot(selectTg); } else { DeselectTarget(); } }
void UpdateTargetInfo() { ISelectableTarget trg = selectedTarget.GetComponent <ISelectableTarget>(); GUIManager gui = GUIManager.instance; gui.trgDist.text = Mathf.CeilToInt((transform.position - selectedTarget.transform.position).magnitude * 4f).ToString() + "м"; gui.trgName.text = trg.GetName(); gui.trgSpd.text = (Mathf.RoundToInt(selectedTarget.GetComponent <Rigidbody>().velocity.magnitude * 4f)).ToString() + "мс"; }