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);
}
}
вроде как оно должно работать, но вечно выдает эту ошибку :(