Сервер "Игры в доминирование"

По описанию работы сервера игры в доминирование можно составить следующий список его интерфейсных форм и функций, сгруппированных в модули:

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

Основная процедура серверной части игры в доминирование — это процедура обработки события Таймер (Timer) формы "Сервер", представляющая собой конечный автомат, состояниями которого являются этапы игры. Вызов этой процедуры соответствует такту работы сервера, он происходит периодически, через определенный промежуток времени, заданный в окне свойств формы "Сервер" в качестве значения параметра Интервал таймера (Timer Interval) (число миллисекунд). В каждом из состояний сервер вызывает соответствующую состоянию функцию из модуля "Ядро игры" для выполнения определенных действий.

Сервер может находиться в одном из состояний, определяющих функцию, которая будет выполнена сервером за очередной такт. Например, в состоянии "игра начата" сервер проверяет наличие заявки от одного из игроков и, если она есть, выполняет ее. Заявки игроков можно разделить на две категории: сделать ход и выйти из игры. Результатом обработки заявки игрока является выполнение сервером необходимых действий и посылка игроку сообщения о результате этих действий.

По данному описанию сервера создана диаграмма вариантов использования, представленная на рис. П 2.5.

Диаграмма вариантов использования для сервера "Игры в доминирование"

Рис. П 2.5. Диаграмма вариантов использования для сервера "Игры в доминирование"