Не могу понять, как исправить ошибки. В Visual Studio ошибок нет, а в unity появляются
Помогите, пожалуйста, решить проблему, не знаю в чём ошибка:
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class LevelObstacles : MonoBehaviour
{
public Transform spawningObject;
public Transform mainPersonPosition;
private List<Transform> spawnedBrick = new List<Transform>();
void Start()
{
StartCoroutine(SpawnCoroutine());//14-ая строчка кода
StartCoroutine(DistroyCoroutine());//15-ая строчка кода
}
IEnumerator SpawnCoroutine()
{
while (true)
{
Transform newSpawnObject = Instantiate(spawningObject, new Vector2(UnityEngine.Random.Range(-8, 8), mainPersonPosition.position.y + 6), Quaternion.identity);
spawnedBrick.Add(newSpawnObject);//21-ая строчка кода
yield return new WaitForSeconds(UnityEngine.Random.Range(2, 4));
}
}
IEnumerator DistroyCoroutine()
{
while (true)
{//28-ая строчка кода
for (int i = 0; i <= spawnedBrick.Count;)
{
if (Math.Abs(spawnedBrick[i].position.y) - mainPersonPosition.position.y >= 10)
{
Destroy(spawnedBrick[i]);
spawnedBrick.RemoveAt(i);
i++;
}
}
yield return new WaitForSeconds(3);
}
}
}
Сам Visual Studio не нашёл ошибок, но в unity консоль выводит 2-ве ошибки, (на предупреждения не обращайте внимания):

На всякий случай я подписал строки кода, в которых есть ошибки.
Ответы (1 шт):
Автор решения: Lesh
→ Ссылка
В цикле i < spawnedBrick.Count (это как должно быть).
Вы же используете несуществующий элемент массива.