Загрузка данных


using NUnit.Framework;
using System.Collections.Generic;
using UnityEngine;

public class Way : MonoBehaviour
{
    [SerializeField] public List<Transform> waypoints = new List<Transform>();
 
    public Transform GetNearestPoint(Vector3 playerPosition)
    {
        float minDistance = float.MaxValue;
        Transform nearestPoint = null;
        foreach (Transform waypoint in waypoints)
        {
            float distance = Vector3.Distance(playerPosition, waypoint.position);
            if (distance < minDistance)
            {
                minDistance = distance;
                nearestPoint = waypoint;
            }
        }
        return nearestPoint;
    }

    public Transform GetNextpoint(Transform currentWaypoint)
    {
        int currentIndex = waypoints.IndexOf(currentWaypoint);
        if (currentIndex < waypoints.Count - 1 && currentIndex >= 0)
        {
            return waypoints[currentIndex + 1];
        }
        return null;
    }
}