Приложение, для решения шахматных задачек типа : Мат в N Ходов.
Приложение состоит из нескольких модулей. Каждый модуль отвечает за отдельную фичу или какой-то отдельный функциональный блок. Общая структура приложения описана на страничке здесь. Для навигации между экранами внутри каждого модуля используется Navigation Component.
Первый экран после запуска - Логин. Для использования приложения необходимо залогиниться. Можно использовать уже созданный аккаунт :
- login : [email protected]
- password : password
Либо можно перейти на экран регистрации и там зарегистрировать нового пользователя.
После успешного логина\регистрации вы перейдете на экран со списком задач. Там отображается краткая информация о матче, в которой возникла ситуация, которую вам нужно будет разрешить. Вы можете выбрать из списка, а можете выбрать случайную задачу по сложности (легкую, среднюю или сложную). Для этого под списком есть три кнопки - Пешка, Слон и Ферзь, соответственно.
После выбора задачи вы переходите на экран с шахматной доской,на которой воссоздана ситуация для решения. Логин\Регистрация, получение списка задачек и подробные данные о выбранной задаче приложение получает с сервера. Взаимодействие с сервером описано тут. Вся остальная работа приложения уже ведется оффлайн.
На экране с выбранной задачей отображается шахматная доска и расставленные на ней фигуры. Вы играете за белых и в начале каждой задачи всегда ваш ход. Для того, чтобы переместить фигуру вам нужно кликнуть по своей фигуре. После этого на доске будут подсвечиваться клетки на которые можно переместить фигуру. Вы можете нажать на любую из этих клеток, чтобы ваша фигура туда переместилась. Или выбрать лубую другую фигуру.
Если ход, который вы сделали - правильный и соотвествует решению, то далее, либо противник сделает свой ход и снова вернет вам управление или, если ход был правильный и последний то вы увидите сообщение об успешном решении задачи. Если ваш ход был ошибочным, то вам покажут сообщение с предложением откатить ход назад, начать заново или выйти из текущей задачи.
Если решить задачу совсем сложно, можно нажать на кнопку Reveal Answer, чтобы под доской открылись ходы, которые нужно сделать, чтобы выиграть.