Вниз
Скачать: CL | DM;

DelphiX, снова detectionCollision....   Найти похожие ветки 

← →
Falcon(TFsoft)   (2004-06-20 12:43) [0]

Здравствуйте уважаемые Мастера!

Помогите с вопросом, который я немогу решить..., итак:
        Пишу на DelphiX, мне надо определять столкновения, главного спрайта (TImageSprite), с другими, такогоже типа, а потом над ними делать операции по перемещению, или уничтожению.
        Всё это я пытаюсь реализовать при выполнении процедуры DoCollision, но так как второстепенные спрайты анимированные (AnimPos, AnimSpeed...), то при выполнении этой процедуры (DoCollision - в классе главного спрайта) она оределяет лиш стокновения, но не определяет класс с каким я стыкаюсь.
       
        Вот к примеру :
        Есть перемещающийся спрайт игрока, есть наимированная пушка, которая поворачивается в ту сторону, где стоит игрок (просто меняю AnimPos и получается пушка смотрит в другом направлени).
        Как толко подхожу к ней со стороны, где AnimPos<>0 то событие не происходит, а если подходить со стороны, где AnimPos=0 то всё ок!
       
        Помогите мне пожайлуста разобратся, и выйти из этой проблемной ситуации...
        С ув. Falcon


← →
}{enon ©   (2004-06-20 19:39) [1]

Странно, хотя у меня вроде такое когда-то было. Попробуй поиграться с PixelCheck (true / false У ОБОИХ ОБЪЕКТОВ), может поможет.


← →
Falcon(TFSoft)   (2004-06-20 21:02) [2]

Спасибо.


← →
Falcon(TFSoft)   (2004-06-20 21:03) [3]

А вообще говоря теоретически, при анимации объект типа TimageSprite всё же остаётся самим собой?


← →
}{enon ©   (2004-06-20 22:08) [4]


> А вообще говоря теоретически, при анимации объект типа TimageSprite
> всё же остаётся самим собой?

А куда ж он денется? Винда при всем желании программиста не даст тому изменить класс контрола во время выполнения программы.


← →
Falcon(TFSoft)   (2004-06-21 13:09) [5]

Да, так оно и есть...
Дело было в PixelCheck надо его было выключить... :(
Но как быть если при выключеном PixelCheck, столкновения просчитываются не по содеожимому спрайта(включая прозрачные участки), а по его размеру - квадрату NxM?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
14-1096878302
marina
2004-10-04 12:25
2004.10.24
Создание компонентов


1-1097421283
Zvrb
2004-10-10 19:14
2004.10.24
Как решить систему дифуравний в Delphi


3-1096362295
Новенький
2004-09-28 13:04
2004.10.24
2 вопроса по QuickReport.


8-1090764860
DDDeN
2004-07-25 18:14
2004.10.24
Подать звук по разным каналам


14-1096435740
cyborg
2004-09-29 09:29
2004.10.24
Хотят ввести цензуру на ТВ




   Наверх