Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2004.10.24;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "Игры";
Текущий архив: 2004.10.24;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.037 c
14-1096309493
Drakon
2004-09-27 22:24
2004.10.24
Опрос: Какой у вас принтер?


1-1097233522
JMasta
2004-10-08 15:05
2004.10.24
Наглядное хранение записей


1-1097336030
UserUserov
2004-10-09 19:33
2004.10.24
Как изменить имя директория?


4-1095875840
hgd
2004-09-22 21:57
2004.10.24
Как работать с WDM драйвером в delphi?


1-1097255076
Anwy
2004-10-08 21:04
2004.10.24
Изминение размера линейного масива





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский