Пятница, 19 Апреля 2024, 05:33

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Ресурсы и Примеры игр » Остальные ресурсы » Про циклы
Про циклы
labinzevvДата: Воскресенье, 10 Января 2021, 08:11 | Сообщение # 1
частый гость
Сейчас нет на сайте
Привет Народ! Помогите решить вопрос:
есть массив, который заполняется объектами с тегом, через цикл при старте сцены.
Потом, объекты постепенно из сцены удаляются (из массива тоже соответственно).
Нужно сделать так, чтобы когда этих объектов стало ноль, сцена перезагрузилась.
Как это организовать.
Вот сам цикл:
Код
public class find : MonoBehaviour  //цикл для поиска группы GameObject по тегу
{
    public GameObject[] mFind = { };    //массив передающий объекты в "public Transform[] chased;"

    void Update()
    {
        mFind = GameObject.FindGameObjectsWithTag("characters");

        for (int i = 1; i < mFind.Length; i++)
        {
            if (i <= 0)
            {
                SceneManager.LoadScene("stage1");
            }
        }
    }
}


3d modeling, unfolding, and texturing. My works: https://vk.com/labinzevv
IlyaKosДата: Воскресенье, 10 Января 2021, 14:23 | Сообщение # 2
участник
Сейчас нет на сайте
1. Лучше вместо массива использовать динамический список List<GameObject>. При удалении объекта необходимо будет убирать их из списка через list.Remove (obj). Потом можно перезапустить сцену: if (list.Count == 0) LoadScene.
2. Если все-таки используешь массив, то после удаления объектов останутся нулы. Значит можно использовать System.Linq и проверить количество: int count = mFind.Count (x => x != null).
Форум игроделов » Ресурсы и Примеры игр » Остальные ресурсы » Про циклы
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг