Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 13: Программирование на Visual Basic искусственного интеллекта. Издание 2. Продолжение 2. Валерий Алексеевич Жарков
Читать онлайн книгу.Timer2.
3. Смысл игры заключается в следующем.
Сразу же после начала игры игрок должен быстро щёлкать мышью по кругам.
Если игрок щёлкнет круг, вокруг которого находятся круги с цветом, отличным от цвета данного круга, то круг не уничтожается (не исчезает с палитры), а игроку начисляется 10 очков.
Если игрок щёлкнет круг, вокруг которого находятся другие круги с цветом данного круга, то круги одинакового цвета, соединённые между собой по горизонтали (по строке) и вертикали (по столбцу) удаляются, а игроку начисляются по 10 очков за каждый выбитый круг.
Следовательно, игрок при помощи указателя мыши должен быстро выбивать тот цвет, который охватывает как можно большее количество кругов (площадь палитры).
По такой схеме игрок быстро щёлкает мышью по кругам, стараясь за отведённое время выбить как можно больше кругов и соответственно очков. Каждое выбивание кругов сопровождается воспроизведением звукового файла Windows XP Balloon.wav (типа удара).
Искусственный интеллект же периодически через каждый заданный нами (при помощи первого таймера Timer1) интервал времени (в данном проекте, через 7000 миллисекунд или 7 секунд) дополняет палитру новыми разноцветными кругами (произвольным образом).
Игрой можно управлять не только мышью, но и клавишами клавиатуры. Клавиша M (первая буква английского слова Menu) раскрывает и закрывает меню Game, а клавиша P (первая буква английского слова Pause) приостанавливает и запускает игру вновь. После нажатия клавиши Alt вместе с клавишей с подчёркнутой буквой (английского алфавита) в команде меню Game или Help, выполняется соответствующая команда.
4. После начала игры идёт отсчёт времени (Time) в секундах в верхней части формы на поле для свойства Text при помощи второго таймера Timer2.
Для каждого сеанса (попытки) игры одного или нескольких игроков задано определённое время, в данном примере, 60 секунд, по истечении которого звучит мелодия файла win.wav.
Игрок прекращает щёлкать мышью и смотрит на заработанные им очки.
5. В данной игре игрок может не только увидеть, но задокументировать заработанные им очки. Для этого он щёлкает на форме или элемент управления PictureBox с рисунком в виде надписи New или в меню Game выбирает команду New Game.
Только при соблюдении двух условий:
– если это первая, вторая или третья попытка;
– если в данной попытке набрано больше очков, чем в предыдущих более чем трёх попытках,
появляется библиотечная (которую мы не будем проектировать) панель InputBox с информацией о заработанных очках (рис. 20.5).
Во всех остальных случаях панель InputBox не появится, что означает проигрыш в игре.
Рис. 20.5. Панель InputBox с информацией о заработанных очках.
В эту панель InputBox игрок с радостью (он вошёл в тройку призёров) записывает своё имя (русскими или английскими буквами) и щёлкает кнопку OK. Панель InputBox закрывается.
6. Имя игрока с выбитыми им очками заносятся в таблицу результатов Options (ее мы будем проектировать вместе с основной формой), которую можно увидеть, если на форме выбрать или элемент управления PictureBox с рисунком в виде надписи Options или в меню Game – команду Options. В таблицу Options искусственный интеллект заносит три лучших результата (рис. 20.6), причём на первом месте