# 8. Отображение результата игры

Table of Contents

8. Отображение результата игры

Цель

После окончания партии игрок получает понятный экран итога: не только текст в диалоге, а оформленный блок с исходом, цифрами счёта и явным действием «вернуться в меню».

Описание выполненной работы

В game_board.tscn добавлен узел CanvasLayer ResultOverlay (скрыт по умолчанию) с полноэкранным Control, ColorRect затемнения и карточкой PanelContainer в духе существующего HUD. Тексты: ResultTitle, ResultScores, ResultSubtitle, кнопка ResultMenuButton.

В game_board.gd метод _offer_game_over() выставляет _game_ended / _busy, снимает выделение с клетки, обновляет баннер хода на «Игра окончена», по сравнению _score_human и _score_ai задаёт заголовок, цвет заголовка (мятный / красноватый / нейтральный), подзаголовок и строку счёта в формате Вы: N · Компьютер: M, затем показывает слой _result_overlay.visible = true. Нажатие кнопки вызывает _on_result_menu_pressed() и change_scene_to_file("res://scenes/main.tscn") — тот же маршрут, что у кнопки «Меню» до оверлея.

func _offer_game_over() -> void:
# ...
if _result_title:
_result_title.text = title
_result_title.add_theme_color_override(&"font_color", title_color)
if _result_scores:
_result_scores.text = "Вы: %d · Компьютер: %d" % [_score_human, _score_ai]
if _result_subtitle:
_result_subtitle.text = subtitle
if _result_overlay:
_result_overlay.visible = true

Логику «когда партия закончена» (нет ходов) не меняли — поменяли только представление финала.

Ссылка на проект: Third Planet

Ссылка на игру: Google Play Rustore

Next: 6. Отображение хода компьютера
Аватар автора

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


godot Series

# 16. Тени

godot 16 / 19
4 min read

Тени через StyleBoxFlat у ячеек, HUD, слота баннера и карточки результата; стили кнопок на титуле и поле; лёгкий контактный затемнённый слой на шарах-планетах.

Read