Если для тебя так важно
Matrix.for [?] и усвоить обучающий материал. В чем у тебя сложность с этим? распылить_на( кузов ) можешь покрасить кузов любой машины. При этом краскопульт поменяет состояние кузова машины.Лучше передавать указатель вместо неконстантной ссылки. Так из места вызова сразу видно, что передаваемое значение может меняться.
nullptr. Подобная семантическая нагрузка буквально неуместна в самом широком наборе вариантов, когда модификация аргумента оправдана.
Я не могу утверждать этого, на мой личный взгляд ты просто совершил несколько ошибок в плане пользования тостером.
Исправить твои ошибки очень легко. Просто изучи правила, соблюдай их и поступай с людьми так, как хочешь чтобы они поступали с тобой.
На счет ответа на твой вопрос я подумаю. Если коротко, то тебе потребуется две таблицы. В первой нужно расположить общие характеристики инвентаря персонажа. Во второй - расположить слоты инвентаря. Связь ячеек с инвентарем идет через идентификатор инвентаря в записи ячейки инвентаря. Идентификатор инвентаря должен быть записан в запись персонажа в таблице персонажей.
Детали и просто больше информации ты можешь найти тут. Я когда-то давно занимался этим проектом и, собственно, там реализована почти описанная мной схема. Я не советую брать прямо оттуда, т.к. используемый там подход лишен гибкости управления инвентарем на уровне БД.