Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 6: Программирование на Visual Basic искусственного интеллекта. Продолжение 2
Шрифт:
ReDim strSmallArr(1)
strBigArr = strRead(3).Split(",")
For i As Integer = 0 To 2
strSmallArr = strBigArr(i).Split(";")
ThreeBI(i) = CInt(strSmallArr(0))
ThreeBP(i) = CInt(strSmallArr(1))
Next
InitBoard(playerName, playerScore, playerTime)
ReDim strBigArr(80)
strBigArr = strRead(4).Split(",")
For i As Integer = 0 To 80
strSmallArr = strBigArr(i).Split(";")
If CInt(strSmallArr(0)) <> BallState.NO_BALL Then
MPBoxes(i).Init(CInt(strSmallArr(1)))
End If
Next
End Sub
В
Листинг 21.2. Метод-обработчик выбора команды.
Private Sub NewGameToolStripMenuItem_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles NewGameToolStripMenuItem.Click
'Обнуляем счётчик секунд:
secondCounter = 0
'Мелодия начала игры:
My.Computer.Audio.Play("..\..\Sounds\drumpad-crash.wav")
Dim plName As String = Nothing
While Trim(plName) = ""
plName = InputBox("Запишите, пожалуйста, Ваше имя " + _
"(оставлять поле пустым нельзя):", "Имя игрока")
End While
InitBoard(plName, 0, 0)
RandomThreeBalls
GiveThreeBalls
flagMadeNew = 1
SaveToolStripMenuItem.Enabled = True
End Sub
В меню Игра дважды щёлкаем по команде Сохранить (для элемента управления MenuStrip). Появляется шаблон метода, который после записи нашего кода принимает следующий вид.
Листинг 21.3. Метод-обработчик выбора команды.
Private Sub SaveToolStripMenuItem_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles SaveToolStripMenuItem.Click
SaveGame
End Sub
В меню Игра дважды щёлкаем по команде Загрузить (для элемента управления MenuStrip). Появляется шаблон метода, который после записи нашего кода принимает следующий вид.
Листинг 21.4. Метод-обработчик выбора команды.
Private Sub LoadToolStripMenuItem_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles LoadToolStripMenuItem.Click
If flagMadeNew = 1 Then
ResetBoard
End If
LoadGame
flagMadeNew = 1
SaveToolStripMenuItem.Enabled = True
End Sub
В меню Игра дважды щёлкаем по команде Выход (для элемента управления MenuStrip). Появляется шаблон метода, который после записи нашего кода принимает следующий вид.
Листинг 21.5. Метод-обработчик выбора команды.
Private Sub ExitToolStripMenuItem_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles ExitToolStripMenuItem.Click
Me.Close
End Sub
В
Листинг 21.6. Метод-обработчик выбора команды.
Private Sub ShowScorToolStripMenuItem_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles ShowScorToolStripMenuItem.Click
Dim frm As Form2 = New Form2
frm.Show
frm.drawTable
End Sub
В меню Очки дважды щёлкаем по команде “Рассчитать средние” (для элемента управления MenuStrip). Появляется шаблон метода, который после записи нашего кода принимает следующий вид.
Листинг 21.7. Метод-обработчик щелчка по элементу.
Private Sub CalculateAvgToolStripMenuItem_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles CalculateAvgToolStripMenuItem.Click
Dim strnewL = Chr(13) + Chr(10)
Dim avg As Double = DDScore.number / DDTime.number
Dim s As String = FormatNumber(avg, 3)
Dim h As New System.IntPtr
MessageBox.Show("Очки : " + DDScore.number.ToString + _
" " + "(очков)" + strnewL _
+ "Время : " + DDTime.number.ToString + " " + "(сек)" + _
strnewL + "Среднее значение : " + s + " " + _
"(очков/сек)", "Среднее значение очков в секунду", _
MessageBoxButtons.OK, MessageBoxIcon.None)
End Sub
В меню Помощь дважды щёлкаем по команде “О программе” (для элемента управления MenuStrip). Появляется шаблон метода, который после записи нашего кода принимает следующий вид.
Листинг 21.8. Метод-обработчик выбора команды.
Private Sub AboutToolStripMenuItem_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles AboutToolStripMenuItem.Click
Dim frm As New Form3
frm.Show
End Sub
Схема записи и вывода справочной информации, например, с правилами игры после выбора команды Справка (для элемента управления MenuStrip) и после выбора других команд уже приводилась в наших предыдущих работах.
Мы закончили написание программы в главный класс Form1 (для формы Form1 с пользовательским интерфейсом игры).
Теперь в наш проект добавляем новые файлы (для программирования соответствующих игровых действий). Добавить в проект файл можно по двум вариантам.