For A = Vert - 1 To 1 Step - 1Command1. Item
(Index - 7 * A). BackColor = Col ThenCommand1. Item (Index - 7 * (A - 1)).
Enabled = False Then. Item (Index - 7 * (A - 1)). BackColor = ColIfIfA
Вышеприведенный цикл последовательно производит следующие логические операции:
шаг: задает численное значение переменной A;
шаг: проверяет цвет фона, выбираемой согласно параметру A, шашки и при его совпадении со значением переменной Col, переходит к проверке следующего условия, то есть шагу 3, а в обратном случае возвращается к шагу 1; (рис.4)
шаг: проверяет, была ли нажата ранее кнопка, определяющаяся
выражением с параметром A, если условие выполняется, то данная шашка закрашивается
цветом, определяющимся переменной Col, в обратном случае возвращается на шаг 1.
(рис.5)
Рис.4 До нажатия помеченной кнопки
Рис. 5 После нажатия пользователем кнопки
Циклов таких было использовано 8, связанно это с направлениями изменения определяющего параметра A:
For A = Down To 1 Step - 1Command1. Item
(Index + 8 * A). BackColor = Col ThenCommand1. Item (Index + 8 * (A - 1)).
Enabled = False Then. Item (Index + 8 * (A - 1)). BackColor = ColIfIfAA = Vert
- 1 To 1 Step - 1Command1. Item (Index - 8 * A). BackColor = Col ThenCommand1.
Item (Index - 8 * (A - 1)). Enabled = False Then. Item (Index - 8 * (A - 1)).
BackColor = ColIfIfAA = Right To 1 Step - 1Command1. Item (Index + A).
BackColor = Col ThenCommand1. Item (Index + A - 1). Enabled = False Then. Item
(Index + A - 1). BackColor = ColIfIfAA = Gor - 1 To 1 Step - 1Command1. Item
(Index - A). BackColor = Col ThenCommand1. Item (Index - A + 1). Enabled =
False Then. Item (Index - A + 1). BackColor = ColIfIfAA = Down To 1 Step -
1Command1. Item (Index + 7 * A). BackColor = Col ThenCommand1. Item (Index + 7
* (A - 1)). Enabled = False Then. Item (Index + 7 * (A - 1)). BackColor =
ColIfIfAA = Vert - 1 To 1 Step - 1Command1. Item (Index - 7 * A). BackColor =
Col ThenCommand1. Item (Index - 7 * (A - 1)). Enabled = False Then. Item (Index
- 7 * (A - 1)). BackColor = ColIfIfAA = Down - 1 To 1 Step - 1Command1. Item
(Index + 9 * A). BackColor = Col ThenCommand1. Item (Index + 9 * (A - 1)).
Enabled = False Then. Item (Index + 9 * (A - 1)). BackColor = ColIfIfAA = Vert
- 2 To 1 Step - 1Command1. Item (Index - 9 * A). BackColor = Col ThenCommand1.
Item (Index - 9 * (A - 1)). Enabled = False Then. Item (Index - 9 * (A - 1)).
BackColor = ColIfIfA
После это происходит процесс подсчета очков обоих игроков.
Для этого вводится циклический алгоритм
ForIndex = 0 To 63
NextIndex
Внутри которого происходит проверка цветов шашек при помощи команды выбора Select, где предположением служит Command1. Item (Index). BackColor, то есть цвет фона шашки. В соответствии со значениями этого предположения изменяются переменные White и Black, значения которых выводятся в элементы Text1 и Text2.
For Index = 0 To 63Case Command1. Item
(Index). BackColorIs = vbWhite= White + 1Is = vbBlack= Black + 1Select. Text =
White. Text = Black
После этого в аналогичном цикле происходит подсчет количества уже нажатых кнопок, достигается это путем вложения в тело цикла неполной команды ветвления с проверкой условия о нажатии кнопки.
A = 0Index = 0 To 63Command1. Item (Index). Enabled = False Then= A + 1IfIndex
If A = 64 Then
приглашение = "Игра закончена. Начните снова!"
сообщение = "Белые выиграли!"
ElseWhite < Black Then
сообщение = "Чёрныевыиграли!"
сообщение = "Ничья! ”IfIf сообщение, vbExclamation, приглашение
Последнее описываемое событие - нажатие на кнопку ВЫХОД. Самыйпростойалгоритм
Sub ComEnd_Click ()
EndSub
На этом разработка кода программы завершена и программа игры
Реверси готова к использованию.
Мини-игры прочно вошли в нашу жизнь, многие заядлые игроки вступают в фан-клубы, скачивают картинки для рабочего стола с изображениями любимых героев компьютерных мини-игр или устраивают турниры. Психологи двояко относятся к компьютерным мини-играм. С одной стороны, мини-игра помогает снять стресс, найти выход из затруднительной ситуации, развивает пространственное мышление, логику и чувство ответственности. С другой же стороны, и рабом монитора становиться не стоит. Лучше всего придерживаться так называемой золотой середины - играть в разнообразные игры по мере необходимости, но не забывать и о повседневных делах или обязанностях.
Жанров компьютерных мини-игр довольно много, поэтому любой может найти мини-игру по вкусу. Сейчас сложно найти человека, который умеет обращаться с компьютером, но ни разу не играл - даже ярые критики подобных развлечений хоть раз, да пробовали играть. В спокойной домашней обстановке можно сыграть в любую мини-игру без опасений критики или непонимания со стороны окружающих. И ребенок, и пенсионер может найти подходящее развлечение из тысяч вариантов - это может быть логическая или аркадная мини-игра, спортивные соревнования или гонки, фентези или стратегия.
Создать мини-игру можно как на языке программирования, так и на специальных конструкторах, которые не требуют знания специальных языков. Существует большое разнообразие языков для программирования мини-игр, такие как Delphi, Java,VisualBasic.net,VisualBasic 6.0 и так далее. Нами было рассмотрено программирование мини-игры "Реверси" на языке VisualBasic 6.0
Создание программы в среде программирования VisualBasic 6.0 можно разделить на 2 основных этапа:
) создание интерфейса
2) написание программного кода
Именно возможность создания и просмотра интерфейса программы
в режиме проектирования и является отличительной чертой среды VisualBasic, как графической, делающей
её гибкой и приемлемой для решения разнообразных задач, в том числе и для
создания игр, что было рассмотрено нами на примере создания игры
"Реверси".
1. Балена Ф., Димауро Д. Современная практика программирования на MicrosoftVisualBasic и Visual C#. Изд-во: Русская Редакция, 2012, стр.640.
2. Гарбер Г.З. Основы программирования на VisualBasic и VBA. Изд-во: Солон-Пресс, 2012, стр. 192.
. Ивьен Б., Берес Д. VisualBasic.net. Библия пользователя. Изд-во: Вильямс, 2012, стр.1024.
. Климов А. Занимательное программирование на VisualBasic.net. Изд-во: БХВ-Петербург, 2012, стр.528.
. КрейгД.К., УэббД. Microsoft Visual Basic. Мастерская разработчика. Изд-во: Русская редакция, 2010, стр.720.
. ЛукинС.Н. Visual Basic. Самоучитель для начинающих. Изд-во: Диалог-МИФИ, 2012, стр.544.
. Лукин С.Н. Понятно о Visual Basic.net. Самоучитель. Изд-во: Диалог-МИФИ, 2011, стр.736.
. Макдональд М. MicrosoftVisualBasic.net: рецепты программирования. Изд-во: Русская Редакция, 2004, стр.688.
. Симонович С., Евсеев Г. Занимательное программирование. Изд-во: АСТ-Пресс, Инфорком - Пресс, 2011, стр.320.
. Слепцова Л.Д. Программирование на VBA. Изд-во: Диалектика, Вильямс, 2010, стр.432.
. Трусов М.А. VisualBasic.net. Создание графических объектов и основы программирования. Изд-во: НТ Пресс, 2011, стр.160.
. Уокенбах Д. Профессиональное программирование на VBA. Изд-во: Вильямс, 2011, стр.800.
. Штайнер
Г. VisualBasic. Изд-во: Лаборатория Базовых Знаний, 2010, стр.784.
Приложение 1.
Dim Col As StringDown, Right, Vert, Gor, A As IntegerSub ComNew_Click ()= vbBlackIndex = 0 To 63. Item (Index). BackColor = vbYellow. Item (Index). Enabled = TrueIndex. Item (27). BackColor = vbWhite. Item (28). BackColor = vbBlack. Item (35). BackColor = vbBlack. Item (36). BackColor = vbWhite. Item (27). Enabled = False. Item (28). Enabled = False. Item (35). Enabled = False. Item (36). Enabled = False. Text = 2. Text = 2SubSub Command1_Click (Index As Integer)Col = vbBlack Then= vbWhite= vbBlackIf. Item (Index). BackColor = Col. Item (Index). Enabled = False= Index \ 8 + 1= 9 - (7 * Vert - (Index - Vert))= 8 - Vert= 8 - Gor= 0= 0A = Down To 1 Step - 1Command1. Item (Index + 8 * A). BackColor = Col ThenCommand1. Item (Index + 8 * (A - 1)). Enabled = False Then. Item (Index + 8 * (A - 1)). BackColor = ColIfIfAA = Vert - 1 To 1 Step - 1Command1. Item (Index - 8 * A). BackColor = Col ThenCommand1. Item (Index - 8 * (A - 1)). Enabled = False Then. Item (Index - 8 * (A - 1)). BackColor = ColIfIfAA = Right To 1 Step - 1Command1. Item (Index + A). BackColor = Col Then If Command1. Item (Index + A - 1). Enabled = False Then. Item (Index + A - 1). BackColor = ColIfIfAA = Gor - 1 To 1 Step - 1Command1. Item (Index - A). BackColor = Col ThenCommand1. Item (Index - A + 1). Enabled = False Then. Item (Index - A + 1). BackColor = ColIfIfAA = Down To 1 Step - 1Command1. Item (Index + 7 * A). BackColor = Col ThenCommand1. Item (Index + 7 * (A - 1)). Enabled = False Then. Item (Index + 7 * (A - 1)). BackColor = ColIfIfAA = Vert - 1 To 1 Step - 1Command1. Item (Index - 7 * A). BackColor = Col ThenCommand1. Item (Index - 7 * (A - 1)). Enabled = False Then. Item (Index - 7 * (A - 1)). BackColor = ColIfIfAA = Down - 1 To 1 Step - 1Command1. Item (Index + 9 * A). BackColor = Col ThenCommand1. Item (Index + 9 * (A - 1)). Enabled = False Then. Item (Index + 9 * (A - 1)). BackColor = ColIfIfAA = Vert - 2 To 1 Step - 1Command1. Item (Index - 9 * A). BackColor = Col ThenCommand1. Item (Index - 9 * (A - 1)). Enabled = False Then. Item (Index - 9 * (A - 1)). BackColor = ColIfIfAIndex = 0 To 63Case Command1. Item (Index). BackColorIs = vbWhite= White + 1Is = vbBlack= Black + 1Select. Text = White. Text = BlackIndex= 0Index = 0 To 63Command1. Item (Index). Enabled = False Then= A + 1IfIndex = 64 Then
приглашение = "Игра закончена. Начните снова!"
IfWhite>BlackThen
сообщение = "Белые выиграли!"
ElseWhite < Black Then
сообщение = "Чёрныевыиграли!"
сообщение = "Ничья!"IfIfсообщение, vbExclamation, приглашениеIfSubSub ComEnd_Click ()Sub