Вот я написал такой код, но он во-первых ресурсозатратный, а во-вторых - находит расстояние только до ближайшего обьекта.
Добавил обьекты в массив:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Rasstoyanie : MonoBehaviour
{
GameObject[] enemy;
GameObject player;
public string nearest;
private void Start()
{
enemy = GameObject.FindGameObjectsWithTag("Enemy");
}
}
и вот в этой части надо найти вместо 1 обьекта, 3 ближайших:
GameObject Find()
{
float dist = Mathf.Infinity;
Vector3 position = transform.position;
foreach(GameObject go in enemy)
{
Vector3 diff = go.transform.position;
float currdist = diff.sqrMagnitude;
if(currdist < dist)
{
player = go;
dist = currdist;
}
}
return player;
}
можете поправить и подсказать, как найти ближайшие 3 обьекта? Просто первый раз с массивами столкнулся.