Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

АРКАНОЙД [Delphi, Windows]


010101001010001010101001 ©   (2004-03-11 21:34:00) 

Кто-нибудь объясните как сделать арканойд. Хотя бы самые основные алгоритмы. Плиз!


010101001010001010101001   (2004-03-14 10:42:00) [1]

Я УЖЕ ПОЧТИ ВСЁ СДЕЛАЛ, но вот одна проблемма осталось - как отследить, что ball ударился об горизонтальную или вертикальтуюгрань кирпичика. Ведь от этого меняется эффект с оси X на ось Y.


cyborg   (2004-03-13 21:58:00) [2]

Если шарик ударился, например, в пределах пяти пикселей с края платформы, то смещение по Х сделай как OfsX=-(OfsX+random(3))


010101001010001010101001   (2004-03-13 20:09:00) [3]

Ну, никто не знает?


010101001010001010101001   (2004-03-13 17:11:00) [4]

Вот в этом отскоке тоже есть проблемы, можете подсказать, как его правильно зделать?


Asteroid   (2004-03-13 09:30:00) [5]

Геморройнее сделатьт нормамльный отскок (при ударе об угол).


TButton   (2004-03-12 23:39:00) [6]

Zeqfreed © [6]
ага, я об том же


Zeqfreed   (2004-03-12 21:40:00) [7]

А с кирпичами тоже не сложно... IntersectRect поможет (если не требуется большой точности, то вполне кдовлетворительно получится)...


Zeqfreed   (2004-03-12 21:36:00) [8]

С панелькой - легко:
if (Ball.Y > Panel.Y - 5) and (Ball.Y < Panel.Y + Panel.Height + 5) and (Ball.X > (Panel.X - Panel.Width div 2)) and (Ball.X < (Panel.X + Panel.Width div 2)) then Ball.SpeedY := -Ball.SpeedY;


010101001010001010101001   (2004-03-12 20:34:00) [9]

Не могу определить столкновение с кирпичиками и самой палкой. Я хочу попробывать безу DelphiX


Servelat   (2004-03-12 08:07:00) [10]

с доской разобрался, с кирпичами - нет
Я тоже пишу арканоид, и все совсем наоборот: с кирпичами разобрался, а с доской - еще нет :) . Давай меняться ? :)
Вообще, у меня получилось не сложно, но довольно длинно, на пальцах не объяснить. Могу код послать.


lyeh   (2004-03-12 00:18:00) [11]

TButton ©
Так это ты спрашиваешь?

А вопрос действительно непонятен... Если можешь определить столкновение с доской, с кирпичами тогда что?


TButton   (2004-03-11 23:20:00) [12]

немогу отследить врезание шарика в кирпич
с доской разобрался, с кирпичами - нет. пользую DelphiX (DDraw, DXTimer), DXSpriteEngine - не пользую, не нравится мне он.


Servelat   (2004-03-11 22:21:00) [13]

>Хотя бы самые основные алгоритмы.
В принципе, все просто: летает шарик, врезается в кирпичи и доску снизу :) . Да это ты и сам знаешь :). В чем проблема реализации? Задай конкретный вопрос: "немогу отследить врезание шарика в кирпич" (или любой другой) - сразу тебе предложат пяток вариантов решения.
Кстати, если не изменяет память, на DelphiGFX был арканоид, посмотри там.


Наверх

Титульная страница Поиск, карта сайта Написать письмо