![]() |
|
||||||||||
|
|||||
|
Регистрация: May 2008
Сообщений: 8
|
Дело в следующем. пишу игру. есть дом с окнами. в окнах появляются бандиты или гражданские. Есть курсор - прицел. представьте что стреляем с пушки и летит ядро. пушка внизу экрана. движение ядра естрественно задается програмно. проблема в следующем: стреляем по бандиту на верхнем этаже, а в это время на нижнем выскакивает гражданский (или бандит. все равно)... ядро естессно совершает хитТест сначала с ним. А мне надо чтобы оно его и не увидело.
У меня на этот счет только одна мысль родилась: во время клика, определять ареал вокруг места клика, и все столкновения вне этого ареала считать незначительными. Но думаю есть какойто более простой способ ))) Заранее спасибо. Вот иллюстрация. Надо чтобы звезда пролетела над синим кругом и жахнула прямоугольник. |
|
|||||
|
Попробуй так:
1) Сделать условие на хит тест звезды тока в её последнем кадре, когда она долетает. если так невозможно, то может поможет: 2) дополнительное условие, на определение, с чем именно сталкиваеться звезда. ну или: 3) просто некак не называй квадрат, тогда и звезда не будет реагировать на него. Я канеш ещё сам ламер, относительно тех кто на этом форуме.
__________________
Дети не должны знать о своих родителях |
|
|||||
|
[+1 14.08.08]
[+1 20.08.08] |
у бандитов и гражданских, т.е. у персонажей заводим переменную, которая определяет: на каком он этаже. У ядра тоже ее устанавливаем : на какой этаж оно летит (определяем по курсору: на первом он этаже, или на втором).
Вот и все.
__________________
~ Never trouble trouble till trouble troubles you! |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Хм... Я так понимаю, ядро летит когда Вы кликнули по цели? Значит цель известна, и надо проводить хитТест только с ней. А если ядро вылетает по нажатию клавиши ПЛИ))) то наверно лучше как Chas сказал, или просто при хитТесте перебирать только обитателей того этажа, на который нацелена пушка.
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Dec 2008
Адрес: Одесса
Сообщений: 129
|
я бы присвоил гражданским имена g1,g2,g3,g4... а бандитам имена b1,b2,b3... и проверял бы хитест токо с b...
|
|
|||||
|
Регистрация: Apr 2008
Сообщений: 71
|
не надо ничего некому присваивать
все намного проще что бандит что гражданский, все это обьекты обьект будет хранить данные например obj.type = "bandit" да и когда создаешь обьект, обьект пихаешь в массив... (если их много, например 3 бандита) после когда стреляешь в пулей, проверяешь через массив в кого попала пуля.. если пуля в когото попала, удаляешь обьект из массива и проверяешь кого убила пуля, бандита или гражданского... |
|
|||||
|
[+1 14.08.08]
[+1 20.08.08] |
во-первых: посту уже две недели, зачем его подымать
во-вторых: задачу внимательней читайте. Задача в том, чтобы определить летит ли ядро на второй этаж плоской проекции или на первый, и как избежать ранения кого-либо на первом этаже, если снаряд летит на второй
__________________
~ Never trouble trouble till trouble troubles you! |
![]() |
![]() |
Часовой пояс GMT +4, время: 06:34. |
|
|
« Предыдущая тема | Следующая тема » |
|
|