Я сталкиваюсь с проблемой попытки внедрить систему инвентаризации в XNA (не имеет значения, может быть любая платформа), но пока. Вот проблема, которую я пытаюсь обернуть вокруг:
Как я могу получить предмет из мира (подумайте, когда вы убиваете монстра, он сбрасывает броню) и доставляет его в инвентарь моего игрока?
Если инвентарь - это просто список предметов, технически, как я могу получить Стальной Меч из мира в инвентарь моего игрока, не имея класса, делающего больше чем одну вещь?
В настоящее время у меня есть структура элементов, которая содержит уникальное шестнадцатеричное значение, счетчик количества элементов (для наращиваемых элементов, таких как стрелки) и текстуру для рендеринга в инвентаре, а также некоторые другие неважные свойства (имя, описание и т. Д.) ,
Было бы плохо проектировать, если бы мне пришлось изменить свой существующий класс предметов, чтобы разместить мировую позицию, наряду с обнаружением столкновений (не хочу, чтобы предмет падал сквозь землю).
Спасибо за любые соображения!
Inventoryкоторый принимает WorldItemи добавляет его как InventoryItem. Так что он также может обрабатывать случаи, когда предметы должны складываться (например, стрелки).
WorldItemчто-то отдельное от твоегоInventoryItem? (Может быть,WorldItemестьInventoryItemшаблон, который помещается в инвентарь игрока при поднятии).