12

День 12. Инвентарь и предметы

Серия Создаю игру

Сегодня сделаю инвентарь.

Изображение сделано с помощью Leonardo ai

Изображение сделано с помощью Leonardo ai

Чтобы механика не была абстрактной, сразу завяжу её с сюжетом. Попробуем положить где-то предмет, поднять его, положить в инвентарь, а затем используем его где-нибудь, и чтобы это ещё и что-то меняло. По-моему, звучит интересно.

Я решил объединить сегодняшнюю тему с небольшим багом у Лены. Да и вообще она ещё слабо проработана. Предметом я выбрал цветы, а объектом, на котором можно их применить, — Лену. Это сделает её немного добрее и даже поменяет настроение. Но обо всём по порядку.

Начал я с самой Лены. У меня было только одно её изображение, поэтому я подготовил ещё два. Она немного поменялась, но это не страшно.

Изображение сделано с помощью Leonardo ai

Изображение сделано с помощью Leonardo ai

Теперь, когда у нас есть три Лены — нормальная, весёлая и злая, — мы можем вырезать их и отправить злиться в домик с грязным номером.


Реализуем инвентарь

Если просто, то он делается вот таким образом:

К нему нужна иконка. Пока взял стоковую 64×64 px. Это пока не так важно. Важнее, чтобы всё работало.

Добавляем предмет

Теперь, когда у нас есть инвентарь, нужен предмет. Это букет, и он будет лежать возле памятника девушки с веслом.

Для начала я вырезал из фотографии букет и сделал PNG-файл 64×64, чтобы в инвентаре все предметы смотрелись одного размера. Поэтому выбрал квадрат 64×64 px.

Дальше всё просто. Делаем одно изображение статуи с букетом…

Изображение сделано с помощью Leonardo ai

Изображение сделано с помощью Leonardo ai

…и одно — без него.

Изображение сделано с помощью Leonardo ai

Изображение сделано с помощью Leonardo ai

Теперь прописываем взаимодействие с букетом. По сути, его можно взять или не брать.

Пример кода:

Выглядит инвентарь пока так себе. Важнее, что он вообще хоть как-то выглядит. Дальше поправим.

Изображение сделано с помощью Leonardo ai

Изображение сделано с помощью Leonardo ai

Взаимодействие с Леной

И теперь пишем код взаимодействия с Леной. Логика следующая:

  1. Мы заходим в домик — она злая.

  2. Можем подарить букет, можем не дарить.

  3. Если дарим — она меняет эмоцию и реплику (прямо в моменте).

  4. Когда заходим снова — она уже нормальная.

Пример кода:

Что пошло не так

Из сложного — помучился с мелкой логикой:

  1. Сначала Лена не хотела радоваться сразу, только после выхода и возвращения.

  2. Потом начала накладываться: новая, весёлая Лена появлялась, а старая не исчезала.

  3. Под конец она не хотела становиться нормальной после возвращения — всё время была какой-то весёлой.

В итоге всё поправил и сделал короткий ролик, посвящённый только этой механике.

Спасибо за просмотр.

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества