Ситуация такая: пишу игру, на подобие match3, те 3 в ряд и ума не приложу как правильно сделать удаление ячейки и появление новых.
Сама игра в моем понимании создается примерно так:
Проблема в том, что не понимаю как сделать удаление по id и как заставить ячейки, которые выше сдвинуться на позицию вниз. Пытался сделать переприсвоением значений высших ячеек низшим используя массив всех объектов (ячеек), но получилось так, что внутри кода (внутри созданного массива gameobject) оно менялось, а вернуть это на игровую сцену не получилось.
В общем, у кого какие есть идеи по удалению, может кто-то раньше сталкивался и может что-то посоветовать. Работы пока не много проделал, так что могу начать заново, если найду толковый алгоритм.
код создания ячеек в родительском объекте
for (int i = 0; i<sellcount; i++) {
GameObject tmpSell = Instantiate (sellItem) as GameObject;
tmpSell.transform.SetParent (sellGroup, false);
}
Хранить массив ссылок на ячейки. (Ячейки лучше сразу в редакторе расставить )
Не удалять ячейки, а допустим менять им спрайты(смотря что у тебя).
Ячейка должна уметь возвратить тип "рубина" который в ней. И на основе этих данных и массива (из пункта 1) производить все расчеты и сдвиги.
ПС: вопрос абстрактный. Это и есть твоя работа, как программиста, находить решение таких проблем.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Модели Good и GoodTag (наследованный от Tag)
Каким образом работает stackpop() ? Хочу реализовать функцию Undo
В воде 150г раствором 20г гидроксида натрия рассчитайте массовую долю гидроксид натрия в получении раствора вычислите количество молекул...