Страница: 1 | 2 |
Вопрос: Arkanoid на VB.NET
Добавлено: 22.03.07 21:25
Автор вопроса: Bashik
Привет Всем!
Меня зовут Ярослав.
Передо мной была поставлена задача написать Арканоида на VB.NET, полностью(((
Уровни, бонусы, в общем все!
Кто может помочь?
Буду очень рад)))
Ответы
Всего ответов: 18
Номер ответа: 1
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #1
Добавлено: 22.03.07 21:41
Т.е. ты хочешь чтоб поставленную перед ТОБОЙ задачу КТО-ТО выполнил?
Хоть какие-нибудь наработки, я думаю, должны быть свои, а сюда приходят только с КОНКРЕТНЫМИ вопросами.
Номер ответа: 2
Автор ответа:
Bashik
Вопросов: 1
Ответов: 8
Профиль | | #2
Добавлено: 22.03.07 21:44
Значит у меня шарик летает и отбиваеться от стенок уже)))
Номер ответа: 3
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #3
Добавлено: 22.03.07 21:46
А вопросы-то какие? ))
Номер ответа: 4
Автор ответа:
Bashik
Вопросов: 1
Ответов: 8
Профиль | | #4
Добавлено: 22.03.07 21:47
Помогите чтоб кнопку привязать к мышке и двигать таким способом)
шарик отбивать
Номер ответа: 5
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #5
Добавлено: 22.03.07 21:51
В смысле, чтоб ракетка ездила в зависимости от мыши, как в DXBall?
Наверное через хук мышинный надо...
Номер ответа: 6
Автор ответа:
Bashik
Вопросов: 1
Ответов: 8
Профиль | | #6
Добавлено: 22.03.07 21:53
А ты в Арканоида играл?)))
Да, так надо)
Номер ответа: 7
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #7
Добавлено: 22.03.07 21:53
Да, кстати, а ты с DirectX'ом пишешь?
Ежели да, то наверное надо DirectInput юзать...
Номер ответа: 8
Автор ответа:
Bashik
Вопросов: 1
Ответов: 8
Профиль | | #8
Добавлено: 22.03.07 21:54
Нет, без директа.
Сейчас в книге посмотрю...
Секунду...
Номер ответа: 9
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #9
Добавлено: 22.03.07 21:57
А ты в DXBall?
Я в Arcanoid еще на спекрумах с роботронами и ЕС'ках сражался...
Номер ответа: 10
Автор ответа:
Bashik
Вопросов: 1
Ответов: 8
Профиль | | #10
Добавлено: 22.03.07 21:58
Не, без понятия(
Но я думаю не стоит так делать, сильно сложно, для школы)))
Номер ответа: 11
Автор ответа:
GlooM
ICQ: 348453688
Вопросов: 88
Ответов: 356
Web-сайт:
Профиль | | #11
Добавлено: 22.03.07 22:01
Bashik, я написал арканоид для КПК на C#.
Если заинтерисовался - стучи в асю: 348453688
Номер ответа: 12
Автор ответа:
Bashik
Вопросов: 1
Ответов: 8
Профиль | | #12
Добавлено: 22.03.07 22:01
Ну блин!
По моему вообще нереальная задача!
Пауза в игре, сохранение...
А с бонусами даже ума не приложу как!
Номер ответа: 13
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #13
Добавлено: 23.03.07 01:56
Привязывать к мышке можно, например, обрабатывая MouseMove, не забыв при этом сделать TrackMouseEvent, чтобы вовремя отслеживать уход мыши с формы.
Пауза в игре делается остановкой главного таймера, который отвечает за изменение сцены.
Сохранение производится записью всех важных переменных, участвующих в построении сцены, в файл, а загрузка, соответственно, в чтении.
Бонусы обычно просто рандомом распределяют по прямоугольной таблице так же, как и клетки с кирпичами.
Номер ответа: 14
Автор ответа:
Bashik
Вопросов: 1
Ответов: 8
Профиль | | #14
Добавлено: 23.03.07 10:13
Хорошо, спасибо.
Насчет миши я понял, но
Номер ответа: 15
Автор ответа:
Bashik
Вопросов: 1
Ответов: 8
Профиль | | #15
Добавлено: 23.03.07 11:20
Кто может разобраться в проге моей?
Подсказать как отладить...
Dim x, y As Integer
Dim dx As Integer = 1
Dim dy As Integer = 1
Dim o As Integer = 12
Dim p As Integer = 12
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Size = New Point(400, 400)
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Button2.Location = New Point(Me.MousePosition.X - Me.Location.X, Me.Button2.Location.Y)
PictureBox1.Location = New Point(x, y)
If (PictureBox1.Location.X + PictureBox1.Width / 2) >= Me.Size.Width - 70 Then
dx = -dx
End If
If (PictureBox1.Location.X) <= 0 Then
dx = -dx
End If
If (PictureBox1.Location.Y + PictureBox1.Height / 2) >= Me.Size.Height - 60 Then
dy = -dy
End If
If (PictureBox1.Location.Y) <= 0 Then
dy = -dy
End If
If (x + 92 + 5 >= Button2.Location.X) And (x - 5 <= Button2.Location.X + Button2.Size.Width) Then
If (y + 69 + 5 >= Button2.Location.Y) And (y + 20 - 5 <= Button2.Location.Y) Or _
 y + 5 >= Button2.Location.Y + Button1.Size.Height) And (y - 5 <= Button2.Location.Y + Button2.Size.Height) Then
dy = -dy
End If
End If
If (y + 20 + 5 >= Button2.Location.Y) And (y - 5 <= Button2.Location.Y + Button2.Size.Height) Then
If (x + 20 + 5 >= Button2.Location.X) And (x + 20 - 5 <= Button2.Location.X) Or _
 x + 5 > Button2.Location.X + Button2.Size.Width) And (x - 5 <= Button2.Location.X + Button2.Size.Width) Then
y = Me.Height - 1
dx = -dx
End If
End If
x += dx
y += dy
o = x
p = y
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
y = p
x = o
Timer1.Enabled = True
If Button1.Text = "Start!" Then
Timer1.Enabled = True
Button1.Text = "Stop!"
Else
Timer1.Enabled = False
Button1.Text = "Start!"
End If
End Sub
End Class
Просто лаги есть небольшие.
Кто захочет могу полностью кинуть, так понятнее.