Лістинг програмного коду
_boi. Form
Dim Moixody As ByteSub CmdNewgame_Click (). Caption = "0". Caption = "0". Caption = "20". Caption = "20" = 0 = 0 (1) (2) (1) (2) (1) (2) (1). Visible = FalseSubSub cmdFor_autor_Click (). ShowSubSub cmdExit_Click () SubSub cmdPravila_Click () _igry.ShowSubSub CmdComp_Proff_Click () SubSub Form_Load () SubSub P2_Click (Index As Integer ) = Moixody + 1.Caption = Str (Moixody) = Int (Index/10) = Index - (X * 10) 2, X, Y = ShotResult.Caption = ShotResult.Caption = ShipL (2). Caption = Str ( Moves) res = "Поранений" Or res = "Вбито" Then GoTo 2
: Pl2.Enabled = False (1) 0.51, StrX, StrY = ShotResult (1). Caption = Str (Moves) res = "Поранений" Or res = "Вбито" Then GoTo 1 . Enabled = True
: CalcShipsLeft.Caption = Str (P1Left) + "". Caption = Str (P2Left) + "" P1Left = 0 Then If P1Left = P2Left Then MsgBox "Нічия!" + vbCrLf + "Наступного разу обов'язково пощастить!",, "Результат гри: Нічия": Exit SubP2Left = 0 Then MsgBox "Гравець переміг на" + Str (Moixody) + "-м ходу! !! ",," Результат гри: Вітання ": Exit SubP1Left = 0 Then MsgBox" Комп переміг на "+ Str (Moves) +"-му ході! ",," Результат гри: Поразка ": Exit Sub
End SubMain () _boi.Show (1) (2) (1) (2) i = 0 To 99
Morskoi_boi.P1 (i). BorderStyle = 1_boi.P2 (i). BorderStyle = 1
Next ilv As String
Do = InputBox ("Задайте складність гри (1-9):", "Ласкаво просимо!")
Slozhnost = Val (lv) While Slozhnost <1 Or Slozhnost> 9_Proff.Caption = "Рівень Компа:" + Str (Slozhnost) SubSub Wait (seconds) 'сповільнюється процедура - пауза на (n) секунд.Enabled = True_boi.Timer1.Interval = 1000 * secondsMe.Timer1.Interval> 0.Enabled = FalseSubSub Timer1_Timer (). Interval = 0Sub
Procedurs_Modul. bas
Public S1 (9, 9) As Byte, S2 (9, 9) As Byte, V1 (9, 9) As Byte, V2 (9, 9) As ByteP1Left As Integer, P2Left As IntegerErr As Boolean, Moves As Integer, ErrName As String, ShotResult As StringShipL As Byte, Slozhnost As Byte, StrX As Byte, StrY As ByteDrawSea (Num As Byte) '- відображає все поле номер Num
'Якщо поле № 1, то:
If Num = 1 Then
For i = 0 To 9j = 0 To 9_boi.P1 (j * 10 + i). Picture = Morskoi_boi.Sprite (S1 (j, i)) jiSub If
'Якщо поле № 2, то:
If Num = 2 Theni = 0 To 9j = 0 To 9_boi.P2 (j * 10 + i). Picture = Morskoi_boi.Sprite (S2 (j, i)) jiSubIfSub ViewSea (Num As Byte ) '- відображає відкриті місця поля номер Num
'Якщо поле № 1, то:
If Num = 1 Then
For i = 0 To 9j = 0 To 9_boi.P1 (j * 10 + i). Picture = Mor...