Мой Kbyte.Ru
Рассылка Kbyte.Ru
Группы на Kbyte.Ru
Партнеры Kbyte.Ru
Реклама
Сделано руками
Сделано руками
> Исходные коды - Петр (Skript) Пономарев -

Visual Basic 5.0/6.0 - Разработка игр

Все примеры / Разработка игр

Игра пинг-понг

Автор: Петр (Skript) Пономарев | добавлено: 06.03.2010, 13:26 | просмотров: 5257 (2+) | комментариев: 0 | рейтинг: *x6
Простая игрушка называется пинг-понг.

Инструкции

Разместите на форме часы с интервалом 10, и пропишите код. Удачи.

Код

Option Explicit
Dim x, y As Integer
Dim dx, dy As Integer
Dim r As Integer
Dim cBall As Long
Dim cBack As Long
Dim wp, hp As Integer

Dim rd As Integer

Dim rx1, rx2 As Integer
Dim ry As Integer
Dim rdx As Integer


Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If rd <> 0 Then
Exit Sub
End If
Select Case KeyCode
Case 37
rd = 2
Case 39
rd = 1
End Select
End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
rd = 0
End Sub

Private Sub Form_Load()
r = 3
x = r
y = 50
dx = 1
dy = 1
cBall = RGB(217, 217, 33)
cBack = RGB(33, 94, 33)
Form1.BackColor = cBack
wp = Form1.ScaleWidth
hp = Form1.ScaleHeight
' &#211;&#239;&#240;&#224;&#226;&#235;&#229;&#237;&#232;&#229; &#240;&#224;&#234;&#229;&#242;&#234;&#238;&#233;
rd = 0
rx1 = 100
rx2 = 125
ry = Form1.ScaleHeight - 20
rdx = 2
End Sub

Private Sub Form_Paint()
Form1.Line (rx1, ry)-(rx2, ry), vbRed
End Sub

Private Sub Timer1_Timer()
' &#209;&#242;&#229;&#240;&#229;&#242;&#252; &#232;&#231;&#238;&#225;&#240;&#224;&#230;&#229;&#237;&#232;&#229; &#236;&#255;&#247;&#224;
Form1.Circle (x, y), r, cBack
' &#237;&#238;&#226;&#238;&#229; &#239;&#238;&#235;&#238;&#230;&#229;&#237;&#232;&#229; &#236;&#255;&#247;&#224;
If dx > 0 Then
' &#196;&#226;&#232;&#230;&#229;&#237;&#232;&#229; &#236;&#255;&#247;&#224; &#226;&#239;&#240;&#224;&#226;&#238;
If x + dx + r > wp Then dx = -dx
Else
' &#228;&#226;&#232;&#230;&#229;&#237;&#229;&#232; &#236;&#255;&#247;&#224; &#226;&#235;&#229;&#226;&#238;
If x + dx - r < 0 Then dx = -dx
End If
If dy > 0 Then
' &#228;&#226;&#232;&#230;&#229;&#237;&#232;&#229; &#236;&#255;&#247;&#224; &#226;&#237;&#232;&#231;
If (x >= rx1) And (x <= rx2) And (y = ry - r - 1) Then
dy = -dy
Else
If y + dy + r > Form1.ScaleHeight Then dy = -dy
End If
Else
' &#196;&#226;&#232;&#230;&#229;&#237;&#232;&#229; &#236;&#255;&#247;&#224; &#226;&#226;&#229;&#240;&#245;
If (x >= rx1) And (x < rx2) And (y >= ry = r) _
And (y <= ry + r) Then
Line (rx1, ry)-(rx2, ry), vbRed
End If
If y + dy - r < 0 Then dy = -dy
End If
x = x + dx
y = y + dy
Form1.Circle (x, y), r, cBall
' &#240;&#224;&#234;&#229;&#242;&#234;&#224;
If rd <> 0 Then
If rd = 1 Then
If rx1 < wp Then
Line (rx1, ry)-(rx1 + rdx, ry), cBack
Line (rx2, ry)-(rx2 + rdx, ry), vbRed
rx1 = rx1 + rdx
rx2 = rx2 + rdx
End If
Else
' &#226;&#239;&#240;&#224;&#226;&#238;
If rx1 > 1 Then
Line (rx2, ry)-(rx2 - rdx, ry), cBack
Line (rx1 - rdx, ry)-(rx1 + rdx, ry), vbRed
rx1 = rx1 - rdx
rx2 = rx2 - rdx
End If
End If
End If
End Sub
' &#237;&#224;&#230;&#224;&#242;&#232;&#229; &#237;&#224; &#234;&#235;&#224;&#226;&#232;&#248;&#243;
Обратите внимание
Язык Visual Basic 6.0 является устаревшим. Многие примеры, размещенные на нашем сайте, были созданы еще во времена Windows 98 и могут не работать в современных операционных системах.
Если у вас возникнут какие-либо проблемы или вопросы, вы можете обратиться за помощью на наш форум.
Об авторе

Петр (Skript) Пономарев

Нет информации об авторе...

См. также:
Профиль автора
Петр (Skript) Пономарев
Последние комментарии (всего: 0)

Добавлять комментарии могут только зарегистрированные пользователи сайта.
Если у Вас уже есть учетная запись на Kbyte.Ru, пройдите процедуру авторизации OpenID.
Если Вы еще не зарегистрированы на Kbyte.Ru - зарегистрируйтесь.


Нет комментариев...

Авторизация
 
OpenID
Зарегистрируйся и получи 10% скидку на добавление своего сайта в каталоги! Подробнее »
Поиск по сайту
Реклама
Счетчики