@GoldeNKingMiDaS

Как динамически создавать множество похожих предметов на сцене, но с разными данными?

Я делаю 2д игру. И суть вопроса вот в чём, у меня есть инвентарь и я хочу иметь возможность выбрасывать из него вещи. Но чтобы при этом создавалось что-то типа "рюкзачка" на полу. Вся сложность заключается в том, что скриптом можно создавать объекты только из префаба. И изменяя значение данных инвентаря этого "рюкзачка" это будет применяться для всех предметов на сцене так как префаб один. Сейчас у меня эти "рюкзачки" при создании имеют рандомный номер в названии, который я могу сохранять в массиве для сохранения и загрузки игры. Но хранить данные о всём объекте в одной строке это максимально неудобно. Хотелось чтобы каждый созданный объект имел собственный массив предметов чтобы уменьшить масштаб его элементов до отдельных слотов. Я смог это сделать на заранее созданных объектах в редакторе, с разными именами, но одним скриптом. Может есть способ создавать объект не из префаба, а как в редакторе? Или есть более простые способы как мне реализовать такие вот хранилища на земле, которые будут динамически создаваться во время игры из скрипта? Также нужна возможность изменять значения на объекте, чтобы можно было класть предметы в уже созданный рюкзак или же забирать из него в инвентаря.
  • Вопрос задан
  • 120 просмотров
Решения вопроса 1
@zukrac
В момент выпадения рюкзачка ты решаешь что он будет содержать.
1. в него кладешь конкретные предметы на этапе создания (сцены или префаба). Предполагаю такая возможность есть.
2. либо кладешь в него динамически. Например через псевдо-предметы которые на самом деле описания предмета, а не сам предмет. Например: тип=меч, уровень=80, остальное=рандом. Или коллекция из набора предметов.

Короче говоря, всё через код. В момент выпадения рюкзачка ты определяешь что в нём содержится. Осталось лишь определить как тебе это будет удобно сделать.
Обычно делают базу предметов. Их коллекции. Выборки с фильтром. И генераторы предметов - это позволяет заполнить любой рюкзачок.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы