Code Every Day 🚀
30 subscribers
687 photos
243 videos
22 files
174 links
Просто для развлечения
Download Telegram
Code Every Day 🚀
Основы Roblox - Крестики-Нолики: логика игры 🎯 Решил реализовать крестики-нолики в Roblox. Работу начал с бизнес логики игры. В проект добавил файл скрипта TicTacToeLogicScript, в рамках которого буду программировать логику игры. Фактически она никак не…
Основы Roblox - Крестики-Нолики: логика игры

🎯 Вчера был разработан скрипт, который моделировал состояние игрового поля и позволял менять значения в ячейках игрового поля. Сегодня продолжил работу и реализовал метод проверки решения - solve()

👉Алгоритм поиска решения:
- проверяем все строки, есть ли строка, которая содержит одинаковые элементы со значением cell.cross или cell.zero
- проверяем все столбцы, есть ли столбец, который содержит одинаковые элементы со значением cell.cross или cell.zero
- проверяем две диагонали

Детали функции solve приведены на скриншотах

#Roblox
#TicTacToe
👍2
👨‍💻В основе алгоритма лежит функция проверки: все ли элементы списка равны некоторому значению
👍1
👨‍💻 Для отладки добавил метод логирования результатов поиска решения
👍1
👨‍💻Также добавил метод для сброса состояния игрока
👍1
👨‍💻После добавил новый тест кейс, который будет создавать разные комбинации решения игры
👍1
👨‍💻 Запустив демо, стартанул код тест кейса и в консоли видны результаты
👍1
Файл бизнес логики игры готов, напомню основное назначение:
👉 отслеживает состояние поля игры
👉 с помощью метода set() можно менять значение состояния
👉 позволяет проверять решение solve() , данный метод можно вызывать после каждого хода игрока
👉 позволяет сбрасывать состояние игры, чтобы можно было начинать игру сначала
👍1
TicTacToeLogicScript.lua
7.2 KB
Обновленный файл с метдом solve()

Теперь можно прикручивать UI, тут будет интересно, 3D крестики-нолики пока еще не делал, надо подумать, как это лучше представить, хотя вариантов масса 🤔
👍1
День 81: Основы Roblox - Крестики-нолики: UI

🎯 Продолжаю работу над крестиками-ноликами в Roblox. В прошлый раз удалось написать скрипт, который отвечал за логику. Попробовал теперь написать скрипт, который отвечает за UI .

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

Преобразовал наш скрипт в модульный согласно документации https://create.roblox.com/docs/tutorials/fundamentals/coding-6/intro-to-module-scripts

#Roblox
#TicTacToe
👍1
TicTacToeLogicScript.lua
7.6 KB
👉 Файл обновленного модульного скрипта прикладываю к посту
👨‍💻 Далее решил реализовать простой прототип UI - ячейки из блоков (9 штук), клик по которым будет раскрашивать их в нужный цвет для нолика и крестика, при этом скрипт, который управляет логикой кликов будет обращаться к модульному скрипту логики и менять игровое состояние, если появится решение, то будет взрыв.

За логику работы с UI отвечает отдельный скрипт TicTacToeUIScript
👍1
👨‍💻 Логика скрипта, отвечающего за UI
Media is too big
VIEW IN TELEGRAM
👨‍💻 Пример работы на демо
День 82: Короткое видео по созданию лифта в Roblox

🎯 Сегодня записал короткое видео по созданию лифта, на все ушло 36 секунд.

👉 Ранее я уже делал прототип подобный, на всякий случай листинг кода прицеплю к посту.

👉 А видео доступно по ссылке
https://youtube.com/shorts/4sjlHFW5Svs?si=FlQIcvwPn4Jxp5hn
👍2