|
|
|||||
Регистрация: Jul 2004
Сообщений: 26
|
Почему не работает HitTest если...
У меня проблема. Если на одной (и единственной) сцене поместить хиттестовую кнопку, то она прекрасно работает. НО если Добавить ещё одну сцену, то кнопка перестаёт работать!!! Попал я с этим делом когда начал делать прелоадер. Думал может сам напортачил и просто тупо добавил сцену и сделал анимацию движения (предварительно естественно удалив сцену с прелоадером) и НЕ РАБОТАЕТ.Почему???
__________________
My mind is glowing... |
|
|||||
Регистрация: Jan 2004
Адрес: нигде - не осталось на Земле свободных земель(
Сообщений: 1,176
|
слишком сложно там всё сделано имхо.
зачем там вообще хиттест нужен, я не шибко рабирался, но кажется можно обойтись при помощи onRollOver, onRollOut. Опиши что ты вообще хочешь увидеть в конечном счёте. |
|
|||||
Регистрация: Jul 2004
Сообщений: 26
|
Я хочу чтобы работала кнопка 02: Попробуй выкинуть другую сцену, и она работает, добавь новую и кнопка перестаёт работать,. Я бы хотел понять почему
__________________
My mind is glowing... |
|
|||||
Привет!
Мне кажется у тебя не всё впорядке с адресацией. Попробуй так: trace (_currentframe) gotoAndStop(_currentframe+pl); и так: trace (_currentframe) _root.gotoAndStop(_currentframe+pl); В первом случае ты обращаешся к тамйлайну кнопки. Далее, обявлена pl = false; а потом var pl = ... А это уже локальная переменная! В-третих, сцены капризная вещи в отношении немерации кадров. Идет сквозная нумерация всех сцен. Поэтому лучше пользоваться метками. А лучше отказаться от сцен при сложном коде. Может окончательный код на кнопке такой надо? onClipEvent (load) { pl = false; } onClipEvent (enterFrame) { pl = hitTest(_root._xmouse, _root._ymouse, true) ? 1 : -1; _root.gotoAndStop(_currentframe+pl-1); } Я просто не понял, где надо gotoAndStop сделать. |
|
|||||
Регистрация: Jul 2004
Сообщений: 26
|
Не работает. И потом зачем нужен trace (_currentframe)?? Он печатает в оутпуте номер кадра бесконечное количество раз!
если сделаешь _root.gotoAndStop(_currentframe+pl-1) ,то мувик 002 до конца не доигрывается. Нет что-то тут не то...
__________________
My mind is glowing... |
|
|||||
тебе говорят, что сцены мутная вещь, а ты не веришь..
onClipEvent (enterFrame) { var pl = hitTest(_root._xmouse, _root._ymouse, true) ? 1 : -1; this. gotoAndStop(_currentframe+pl); } объяснения ищи сам |
|
|||||
Раз silin успел меня опередить, попробую дать объяснение (которое было получено мною вследствии долгих страшных пыток над Flash 2004). Если использовать gotoAndStop в коде клипа, не указывая this, то параметр, который передается этому методу, будет преобразован относительно всех кадров фильма. Т.е. gotoAndStop(10) (код в десятом кадре второй сцены), если есть две сцены и в первой 10 кадров, будет равен gotoAndStop(20) (10-ый кадр второй сцены - это 20-ый фильма). Если указать this, то параметр метода будет напрямую указывать кадр клипа. Надеюсь, я понятно выразился и мои истязания Flash-ки дали хоть сколько-нибудь правильный вывод.
__________________
За двумя зайцами погонишься - от егеря по морде получишь |
|
|||||
"Будь проще, и к тебе потянуться люди".
Из "Золотых засыпей" Цитата:
Введена в код для наглядности - ну чтоб ты видел собственные вилы! Бесконечное число раз - так ведь enterFrame - "каждый раз в воиспроизводимом кадре". Это прописные истины можно прочесть в ХЭЛПе. Насчет сцен писалось неоднократно на форуме. Прочти еще это для развития: http://www.vmstudio.com/materials.php?noscenes Статья категоричная, но полезная. Кагда отвечают, будь вежливей - на тебя потрачено время и некоторые усилия разобрать твой код, а не отвечать "зачем нужно". Задавать вопросы нужно более точно. Вон тоже FreeLander не понял: "Опиши что ты вообще хочешь увидеть в конечном счёте." Писалось все без задней мысли. Всегда рад буду помочь. |
|
|||||
Регистрация: Jul 2004
Сообщений: 26
|
Всем большое спасибо, впредь буду стараться изъясняться понятнее.
__________________
My mind is glowing... |
Часовой пояс GMT +4, время: 14:26. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|