Тестовое задание
Тестовое задание "Сапер" представляет из себя готовую игру на Godot, которую нужно дописать согласно тз. Предполагается, что задание можно сделать за 6 часов. (1 час на освоение движка, 2 часа на документацию, 3 часа на задания)
Игру необходимо запускать на движке Godot (https://godotengine.org/) последней стабильной версии (3.3).
Тебе наверняка пригодится внимательно прочитать туториалы, особенно рекомендую разделы Step by Step
Нажми на кнопку Use this template
и создай приватный репозиторий github.
Пригласи в него
@jkb0o
и @sdshorin
.
Понятная, детальная и неперегруженная история коммитов - большой плюс.
Игра сделана по тз: https://docs.google.com/document/d/1S9oCfDpdKV3hTjPz_mHC_dboJzD3TcnXX1dC2h9bsJY/edit?usp=sharing
Игра разбита на 2 сцены и 5 скриптов, они все находятся в директории logic
-
cell.gd
- скрипт клетки. Отвечает за её отображение -
cell.tscn
- сцена одной клетки -
constants.gd
- синглтон с константами -
desk.gd
- скрипт доски. Отвечает за создание игрового поля и обеспечивает к нему легкий доступ -
game.gd
- основной скрипт игры. Реагирует на нажатия клеток, выводит финальный экран. -
level_generator.gd
- сюда вынесена генерация уровня -
main_scene.tscn
- Основная сцена игры.
- Скачать движок, запустить проект, сыграть в несколько игр
- Разобраться, какая часть кода за что отвечает (брейкпоинты при этом очень помогут)
Решение каждого задания нужно оформить отдельным коммитом!
- При первом клике на поле игра выводит в консоль расположение всех бомб, и это ломает весь игровой процесс. Уберите лишний вывод из программы.
- Если нажать на флажок с бомбой - игра заканчивается. Измените программу, чтобы клик левой мышкой не открывал ячейку, отмеченную флагом.
- Если играть и активно ставить флажки - игра заканчивается раньше, чем будут найдены все бомбы. Исправьте: игра должна заканчиваться в тот момент, когда количество закрытых клеток равно количеству бомб.
- При клике на пустое поле открываются только пустые ячейки. Нужно изменить код, чтобы игра соответствовала оригинальному Саперу: при клике на пустое поле открывается все пустые ячейки и прилегающие к ним цифры.
- Предложите ещё два-три своих улучшения, которые можно сделать в игре. Они могут относится к геймплею, визуальной части или к коду. Напишите ваши идеи в этот
README
.