Поочередное создание префабов из массива

Общие вопросы о Unity3D

Поочередное создание префабов из массива

Сообщение WiZaRd21222 22 мар 2017, 21:00

Проблема такая. Создаю кликер и необходимо что бы при "затыкивании" одного врага(префаб) появлялся следующий(не рандомно) и так далее. Я создал массив, туда перетащил префабы, этой функцией я вызываю первый префаб при старте игры
Синтаксис:
Используется csharp
 public void SpawnMonster()
    {
        int index = 0;

        GameObject monsterObj = Instantiate(MonstersPrefabs[index])
            as GameObject;

        monsterObj.transform.position = StartPosition.position;
    }
И вот вопрос можно ли переделать эту функцию что бы при удалении(убийстве) первого префаба появлялся второй и так далее?
WiZaRd21222
UNец
 
Сообщения: 2
Зарегистрирован: 22 мар 2017, 20:50

Re: Поочередное создание префабов из массива

Сообщение MANMANA 22 мар 2017, 23:40

Перед Destroy инстанцированного (текущего) объекта напишите инстанс (instantiate) следующего элемента массива, предварительно запомнив индекс текущего объекта в indexCurrent, т.е.
Как-то так

GameObject monsterObjNext= Instantiate(MonstersPrefabs[indexCurrent+1])
as GameObject;
Destroy();
Если вешать скрипт на текущий игровой объект, который уничтожаете
Либо ищите созданный объект, уничтожайте текущий и создавайте новый ГО из скрипта, в котором существует функция SpawnMonster(),
Либо вызывайте SpawnMonster() с параметром следующего объекта для уничтожения,
Или и т.д.
_3dbuffer.com
MANMANA
UNIверсал
 
Сообщения: 475
Зарегистрирован: 31 июл 2014, 10:32
Откуда: Moscow
  • Сайт

Re: Поочередное создание префабов из массива

Сообщение WiZaRd21222 23 мар 2017, 20:15

Спасибо большое!
WiZaRd21222
UNец
 
Сообщения: 2
Зарегистрирован: 22 мар 2017, 20:50


Вернуться в Общие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16