Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 8: Программирование на Visual C# искусственного интеллекта. Издание 2. Продолжение 1. Валерий Алексеевич Жарков
левой ракеткой при помощи клавиш W, S и O.
По мере игры скорость перемещения мяча увеличивается, а угол отскока мяча от границ формы и ракеток изменяется, что приводит к достаточно быстрому окончанию игры.
Игра прекращается, когда один из игроков потеряет все жизни. Победителем считается игрок, у которого сохранилась хотя бы одна жизнь.
2.2. Правила игры
1. После запуска игры, на экране появляется форма с меню Singleplayer, Multiplayer и Exit (рис. 2.1). Клавишами со стрелками выбираем нужную команду и нажимаем клавишу Enter.
2. Появляется поле игры, на котором справа находится синяя (Blue) ракетка Игрока 1, а слева – красная (Red) ракетка Компьютера в роли Игрока 2 (по первому режиму игры Singleplayer) или Игрока 2 (по второму режиму игры Multiplayer).
Вверху слева и справа находятся два табло с тремя жизнями Lives в виде начальных трёх шаров для двух игроков (рис. 2.2).
Мяч произвольным образом прыгает в пределах 4-х границ формы, отскакивая от границ формы и двух ракеток. После каждого такого отскока мы слышим звук добавленного в проект звукового файла. Правая граница формы – это ворота Игрока 1, а левая граница формы – это ворота Игрока 2 (или Компьютера в роли Игрока 2).
Рис. 2.1. Выбираем режим игры Singleplayer или Multiplayer.
Рис. 2.2. Справа – ракетка Игрока 1, слева – ракетка Игрока 2, мяч – в нижнем правом углу.
3. Предположим, что мы выбрали заданный по умолчанию первый режим игры Singleplayer (Игрока 1 с компьютером) и нажали клавишу Enter. Игрок 1 при помощи клавиш со стрелками Up и Down перемещает правую ракетку, старается отбить ею мяч и не дать мячу коснуться правой границы формы, так как после каждого такого касания (пропущенного в свои ворота мяча) Игрок 1 теряет одну жизнь. Аналогично поступает Компьютер с левой ракеткой.
4. Предположим, что клавишами со стрелками мы выбрали второй режим игры Multiplayer (Игрока 1 с Игроком 2) и нажили клавишу Enter. Игрок 1 действует так же, как по первому режиму, а вот Игрок 2 при помощи клавиш W и S перемещает левую ракетку, старается отбить ею мяч и не дать мячу коснуться левой границы формы, так как после каждого такого касания (пропущенного в свои ворота мяча) Игрок 2 теряет одну жизнь.
5. Игра прекращается, когда один из игроков потеряет все жизни.
6. Победителем считается игрок, у которого сохранилась хотя бы одна жизнь (на рис. 2.3 – это Игрок 2 с красной ракеткой Red). Мы видим сообщение Red Won. Чаще всего, Компьютер (в роли Игрока 2) побеждает.
4. Если в игре участвуют несколько человек, то победителем считается тот, у кого после окончания игры сохранилось больше жизней.
5. Форму с игрой закрываем стандартно, щёлкая на ней значок Close.
На основании этих правил можно сформулировать другие правила.
В игре можно использовать различные графические изображения и звуковые файлы различных форматов (с внесением соответствующих изменений в приведённую далее программу).
Рис. 2.3. Сообщение о победителе.
2.3. Создание проекта Visual Studio
В VS щёлкаем значок New Project (или File, New, Project), в панели New Project в окне Project types выбираем тип проекта Visual C#, XNA Game Studio в окне Templates выделяем шаблон Windows Game, в окне Name записываем имя Pong2 и щёлкаем OK. VS создаёт проект и выводит файл Game1.cs с показанным выше шаблоном