Страница 1 из 1

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

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

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

        monsterObj.transform.position = StartPosition.position;
    }
И вот вопрос можно ли переделать эту функцию что бы при удалении(убийстве) первого префаба появлялся второй и так далее?

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

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

GameObject monsterObjNext= Instantiate(MonstersPrefabs[indexCurrent+1])
as GameObject;
Destroy();
Если вешать скрипт на текущий игровой объект, который уничтожаете
Либо ищите созданный объект, уничтожайте текущий и создавайте новый ГО из скрипта, в котором существует функция SpawnMonster(),
Либо вызывайте SpawnMonster() с параметром следующего объекта для уничтожения,
Или и т.д.

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

СообщениеДобавлено: 23 мар 2017, 20:15
WiZaRd21222
Спасибо большое!