Просмотр полной версии : hitTest
Есть мувик, hit-облать которого изначально квадратная...
___
| |
|___|
(квадрат)
...но в основной сцене он расположен под углом, и по идее hit-облась должна выглядеть
следующим образом (чего необходимо добиться):
/\
/ \
\ /
\/
(квадрат под углом)
...но! этого почему-то не происходит...и hit-облась какбы закрвает углы и становится
квадратной как ни крути....
МОжет надо hitArea использовать ? Блин не вразумею! Подскажите пожалуйста.
paravozzz
09.11.2003, 20:41
сам спрашиваеш и одновременно отвечаеш. :p
По hitArea у меня скудная информация...
Как примерно описать контур с помощью hitArea ??
Fla с наглядным примером...
Неужели и тут никто не в курсе :confused:
ай-я-яаааааааа-й :(
schleicher
11.11.2003, 10:26
Да нет, тут все всё знают, просто им отвечать влень.
Кажись, твою проблему надо решать более сложным способом.
Например, куркулировать на машинке её углы(в точках) и проверять хиттест по этим точкам. Дело в том, что при этом ты можешь задать флаг в параметрах хиттеста, где будет определяться не баундинг бокс, а реальный контент клипа.
Я понятно выразился?
Пушистик
11.11.2003, 11:40
неверный синтаксис hitTest'a
if(this, hitTest(_root.formula)){
поробуй
if(this.hitTest(_root.formula)){
и поставь shapeFlag true ....
аааа...!всё!щя сваливаю....приду посмарю! :D
schleicher
11.11.2003, 11:53
Пушистик!
Этот синтаксис хиттеста не поддерживает Шейпфлаг.
Шейпфлаг канает токо при mc.hitTest(x,y,shapeFlag)
или mc.hitTest(mc2) - тоже поддерживает флаг?
можа я хелпы читать не умею?
или пора на седьмой флэш перелазить?
А, кажется понял..
Короче получается, что надо в каждом кадре машинки вычислять 8 значений X'ов и Y'ов(углы относительно центра мувика машинки), а в заборе делать проверку hitTest на 4 координаты, так ? А этот способ не будет сильно тормозить комп?
schleicher
11.11.2003, 13:23
4 икса и 4 игрека.
Думаю, тормозить сильно не будет, хотя на сотом пентиуме запускать не рекомендую.
Ну что поделаешь, на 100 и масяня наверное залипает..
Если получится, я твой ник на одном из этих заборов увекавечу))
schleicher
11.11.2003, 13:53
Чтобы в меня формулки врезались????
Так они знаешь как лихо теперь отскакивать будут
Ну смотри сам, тендера блина не будет
schleicher
11.11.2003, 14:22
Кстати, я заментил, что если не врезаться, а медленно подъезжать, то можно барьер проехать насквозь!
Эта фигня происходит потому что координаты зависят от скорости - это шаг в несколько пикселов...и получается что подъезжаешь к барьеру и координаты оказываются прямо в hit-области барьера, а при пересечении скорость меняется на половину обратной, следовательно тачка застряёт....
Но это не страшная проблема, просто не до неё было, думаю её можно одалеть
Пушистик
11.11.2003, 14:50
Кстати, я заментил, что если не врезаться, а медленно подъезжать, то можно барьер проехать насквозь!
угу...и еще неверная акселерация при сдаче назад и повороте...
2Пушистик
Ты имеешь ввиду крен? Или именно акселерацию ?
Насчёт барьера я на пред'идущей написал
2Пушистик
Я понял что ты имел ввиду
То есть когда жмёшь назад и влево тачка должна ехать назад и вправо....как во всех игрушках точно!
"Тригонометрия это мастурбация
localToGlobal(); - это ответ!"
- борцовскый клуб -
Всё утро ломал голову над тангенсами-гипатенузами, а нужно было открыть Колина Мука на 602й странице.
Точки не вычисляются а задаются как объект со свайствами X и Y, которые равняются оступом от 0,0 мувика машинки, затем переводятся в глобальную систему координат методом localToGlobal(point);
Осталось решить как-нибудь глюк с увязанием в барьере...
Пушистик
12.11.2003, 16:18
Оригинал написал(а) Zergy
2Пушистик
Я понял что ты имел ввиду
То есть когда жмёшь назад и влево тачка должна ехать назад и вправо....как во всех игрушках точно!
угу.....ты прально понял!
Осталось решить как-нибудь глюк с увязанием в барьере...
глянь мой варянт...
Гы-гы
Так даже забавней)
Наверное так и оствлю как ты предложил
Кстати, попробуй задом сдать на барьер))
Надо if скорость<0 then -4 else 4
Спасибо за советы
Результат будет примерно такой..
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.