void OnScannerDetect(OnboardScanner.Result result) { if (Time.realtimeSinceStartup < DowntimeEnds) { return; // TOO SOON! ;) } var distance = float.PositiveInfinity; GameObject closest = null; foreach (var obj in result.Items) { if (!PreyTags.Contains(obj.tag)) { continue; } var d = (obj.transform.position - transform.position).sqrMagnitude; if (d < distance) { closest = obj; distance = d; } } if (!float.IsInfinity(distance)) { Target = closest; } }
void OnScannerDetect(OnboardScanner.Result result) { var threats = result.Items; var distance = float.PositiveInfinity; GameObject closest = null; foreach (var threat in threats) { if (!ThreatTags.Contains(threat.tag)) { continue; } var d = (threat.transform.position - transform.position).sqrMagnitude; if (d < distance) { closest = threat; distance = d; } } if (!float.IsInfinity(distance)) { TargetToEvade = closest; } else { TargetToEvade = null; } }