C#C Unity Object reference not set to an instance of an object

Я новичек в написании игр на юнити, по этому спрошу здесь, что конкретно тут не так, и как воплотить мою задумку.

    public class Pirat : MonoBehaviour
{
    public GameObject barellPrefab;
    private Transform[] wayPoints;
    private static Transform spawnPoint;
    private string enemyTag = Details.enemyTag;
    public static GameObject enemy;
    private bool position = false;

    void Start()
    {
        wayPoints = Way.points;
    }

    void FindSpawn()
    {
        if (!position)
        {
            spawnPoint = wayPoints[0];
            foreach(Transform point in wayPoints)
            {
                if (Vector3.Distance(transform.position, point.position) > Vector3.Distance(transform.position, spawnPoint.position))
                    {
                        spawnPoint = point;
                    }
            }
        }
        else
        {
            FindEnemy();
        }
        position = true;
    }

    void FindEnemy()
    {
        enemy = GameObject.FindGameObjectsWithTag(enemyTag)[0];
        if (enemy!=null)
        {
            DropBarell();
        }
    }

    void DropBarell()
    {
        GameObject barellGO = (GameObject)Instantiate(barellPrefab, spawnPoint.position, transform.rotation);
        Barell getBarell = barellGO.GetComponent<Barell>();
        if(getBarell != null)
        {
            getBarell.Atack(enemy);
        }
    }

    void Update()
    {
        InvokeRepeating("FindSpawn", 0f, 0.5f);
    }
}

вроде как оно должно работать, но вечно выдает эту ошибку :(


Ответы (0 шт):