private void PollSelection() { Vector2 worldPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition); if (Physics2D.OverlapPointNonAlloc(worldPoint, hits) > 0) { int i = 0; for (; i < hits.Length; i++) { if (hits[i] != null && hits[i].tag == "MapRegion") { break; } } if (i != hits.Length) { MapRegion temp = hits[i].GetComponent <MapRegion>(); if (temp != focusedRegion) { if (focusedRegion != null) { focusedRegion.Highlight(false); } focusedRegion = temp; focusedRegion.Highlight(true); } if (Input.GetButtonDown("Fire1")) { clickCallback(temp); } } } else if (focusedRegion != null) { focusedRegion.Highlight(false); focusedRegion = null; } }