Code Every Day 🚀
30 subscribers
687 photos
243 videos
22 files
174 links
Просто для развлечения
Download Telegram
👨‍💻 Вся логика прототипа в одном скрипте:
- при касании беговой дорожки увеличиваем WalkSpeed
- при касании базовой платформы соответственно восстаналиваем первональное значение.
👍1
Media is too big
VIEW IN TELEGRAM
День 78: Основы Roblox - Падающие платформы

🎯 Часто в играх игроку надо успеть пробежать по платформам, которые после касания падают. Сегодня реализовать подобную механику.

Пример на демо.

#Roblox
👍1
👨‍💻 В игровой мир доблены 3 блока, располагающиеся на разных высотах, также добавлен скрипт для реализации логики падения платформ после соприкоснования
👍1
👨‍💻 Триггер касания один на все платформы, в нем мы проверяем, что платформы дотронулся персонаж, ищем все объекты, до которых он докоснулся, затем роняем их после некоторой задержки.
👍1
День 79: 46 секунд для вращения объектов

🎯 Ранее уже был прототип для разбора вращения объектов, но недавно начирикал коротенький урок

https://youtube.com/shorts/fwA7VTNPLPk?si=AyNPLOVKETpITQFR

#Roblox
👍2
Основы Roblox - Крестики-Нолики: логика игры

🎯 Решил реализовать крестики-нолики в Roblox. Работу начал с бизнес логики игры.
В проект добавил файл скрипта TicTacToeLogicScript, в рамках которого буду программировать логику игры. Фактически она никак не связана с игровым миром, это просто моделирование игрового поля и логика хода игрока.

#Roblox
#TicTacToe
👍1🔥1
👨‍💻 Игровую ячейку моделирует список с перечислением возможных значений cell
👨‍💻 Состояние игрового поля будет моделироваться двумерным массивом state, по умолчанию каждая ячейка заполнена значением cell.none, то есть не выбрана ни одним из игроков
👍1
👨‍💻 Потребуется много логировать по ходу работы скрипта, поэтому добавим специальные методы для удобства работы с логами: добавим уровень логирования, по которому можно будет понять суть сообщения - ошибка, предупрждение, инфо сообщение. Также сразу заведем набор переменных окружения, чтобы можно было в одном месте включать и отключать логи. Возможно, в окружение еще добавятся флаги для работы приложения.
👍1
👨‍💻 Соответственно, для логирования добавим функции, которые выводят логи совместно с уровнем логирования, попозже будет видно, как это работает.
👍1
👨‍💻Также хорошо бы уметь логировать состояние игрового поля, для этого напишем отдельный метод, который преобразует двумерный массив в строки и выводит в логи
👍1
👨‍💻Для клиентского кода нужно будет предоставить пару методов: один из них - метод смены состояния ячейки. В этот метод нужно передать координаты ячейки и значение: крестик или нолик. Метод должен уметь обрабатывать ошибки.
👍1
👨‍💻Детали проверок для метода смены состояния ячейки игрового поля представлены на скриншоте, фактически они проверяют, что игрок не пытается поменять ячейку не в пределах игрового поля, а также он должен выбрать один из возможных вариантов для ячейки
👍1
👨‍💻Скрипт бизнес логики уже умеет менять состояние игрового поля, поэтому можно написать тестовые методы для проверки его работы. Добавим для удобства специальный метод testCase, который принимает имя тест кейса, по этому имени логи будут группироваться, а также анонимную функцию, в которой можно описать набор тестов.

На скриншоте написаны тесты для метода set
👍1
Media is too big
VIEW IN TELEGRAM
👨‍💻 Результат работы скрипта, тестов скрипта, отвечающего за моделирования логики крестков-ноликов, представлены на демо.
👍1