Игра "Поймай кнопку" - VB
Формулировка задачи:
Игра "Поймай кнопку"
На форме помещена кнопка.
Цель игры: тренировка реакции.
1) Пользователь выбирает размеры формы (в процентах от размера экрана) и размеры кнопки *также в процентах).
2) Пользователь выбирает время реакции, то есть то время, в течение которого нужно успеть заметить кнопку на форме и нажать на ее мышкой, иначе кнопка будет иметь новые координаты.
3) Игра началась, если пользователь успевает за время реакции нажать на кнопку, то он выиграл, иначе программа генерирует случайным образом новые координаты кнопки на любой области формы. Необходимо реализовать, чтобы новые координаты значительно отличались от существующих ( то есть нужен приличный разброс, чтобы не было скучно!).
Помогите написать код для этой игры. Появилась идея, а как ее реализовать пока не понимаю.
Решение задачи: «Игра "Поймай кнопку"»
textual
Листинг программы
- Dim PerF As Integer, PerB As Integer
- Dim Inter As Single
- Private Sub B_Click()
- If B.Caption = "Start" Then
- Timer1.Interval = Inter
- Timer1.Enabled = True
- B.Caption = "Catch me"
- Else
- MsgBox "QWERTYUIO!!!"
- B.Move Me.Width / 2 - B.Width / 2, Me.Height / 2 - B.Height / 2 - 300
- B.Caption = "Start"
- Timer1.Enabled = False
- End If
- End Sub
- Private Sub Command5_Click()
- Me.Height = Screen.Height / 100 * PerF
- Me.Width = Screen.Width / 100 * PerF
- Me.Move Screen.Width / 2 - Me.Width / 2, Screen.Height / 2 - Me.Height / 2
- B.Height = (Me.Height - 400) / 100 * PerB
- B.Width = Me.Width / 100 * PerB
- B.Move Me.Width / 2 - B.Width / 2, Me.Height / 2 - B.Height / 2 - 300
- Frame1.Visible = False
- B.Caption = "Start"
- B.Visible = True
- End Sub
- Private Sub Form_Load()
- Randomize
- PerF = 50: Text1.Text = PerF
- PerB = 12: Text2.Text = PerB
- Inter = 1000: Text3.Text = Inter / 1000
- End Sub
- Private Sub Command1_Click()
- PerF = PerF - 1
- If PerF <= 1 Then PerF = 1
- Text1.Text = PerF
- End Sub
- Private Sub Command2_Click()
- PerF = PerF + 1
- If PerF >= 100 Then PerF = 100
- Text1.Text = PerF
- End Sub
- Private Sub Command3_Click()
- PerB = PerB - 1
- If PerB <= 1 Then PerB = 1
- Text2.Text = PerB
- End Sub
- Private Sub Command4_Click()
- PerB = PerB + 1
- If PerB >= 100 Then PerB = 100
- Text2.Text = PerB
- End Sub
- Private Sub Command6_Click()
- Inter = Inter - 100
- If Inter <= 100 Then Inter = 100
- Text3.Text = Inter / 1000
- End Sub
- Private Sub Command7_Click()
- Inter = Inter + 100
- If Inter >= 10000 Then Inter = 10000
- Text3.Text = Inter / 1000
- End Sub
- Private Sub Timer1_Timer()
- Text4.SetFocus
- B.Move Rnd * (Me.Width - B.Width), Rnd * (Me.Height - B.Height - 400)
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д