![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Помогите пожалуйста разобраться, непонятно откуда после прохождения игры и повторного нажатия, появляется дубликат клипа руки с луком.
Да и еще уровень вложенности прицела при повторе становиться ниже чем монстры. вроде уже точно задаю на первом кадре уровень, но при повторе он как буль-то пропускает этот кусок кода. нужно сегодня за ночь решить эту проблему, помогите пожалуйста знающие люди. внутри 3 кадра, 1 кадр сама игра 2 кадр игра не пройдена 3 кадр игра пройдена при нажатии на повторить, снова идет переход на 1 кадр |
|
|||||
|
понял в чем проблема, но не знаю как её решить.
Все глюки начинаются из за глубины мувиклипа. хоть я и при помощи swapDepth задаю глубину, на 2-м круге почему-то все перестает работать |
|
|||||
|
мозг уже не может работать, незнаю как исправить проблему.
вот воссоздал эту проблему без лишних отвлекающих моментов в архиве исходник и сама флешка. чтоб увидеть глюк нужно после каждого клика проводить над квадратами, и увидите этот глюк. Помогите разобраться как избежать этой ошибки? почему глубина клипов сама становиться отрицательной и потом её невозможно изменить? еще раз очень прошу помочь мне кто знает в чем проблема и как её исправить. |
|
|||||
|
Модрон-ветеринар
|
По вашему примеру (проблема с глубиной.rar). Чтобы понять, что происходит:
1) Уберите все трейсы в 1-м кадре. Поставьте в конце кода 1 кадра следующее: trace(_root.getInstanceAtDepth(-16381)); trace(_root.getInstanceAtDepth(-16383)); trace(_root.getInstanceAtDepth(-16379)); trace(_root.getInstanceAtDepth(5000)); trace(_root.getInstanceAtDepth(5001)); trace(_root.getInstanceAtDepth(5002)); Запустите пример. Выведет: Все верно. На уровнях -16381, -16383, -16379 к моменту трейсов уже ничего нет, потому и undefined. Все стоит теперь на 5000-5002. Но! Щелкните, перейдите в 2 кадр. Еще раз щелкните, перейдите тем самым опять в 1. Видите? У вас трейсы выведут То есть на сцене у вас на тех же самых местах и на тех же самых авторских отрицательных уровнях опять возникают те же мувики, созданные в авторской среде (с теми же самыми именами!). Отсюда и дубликаты возникают и глубины не те. Решение проблемы при данных обстоятельствах: 1) Убирайте все со сцены и аттачте мувики из библиотеки: attachMovie('t1_id', 't1_mc', 5000, {_x:100, _y:100}); attachMovie('t2_id', 't2_mc', 5001, {_x:100, _y:200}); attachMovie('t3_id', 't3_mc', 5002, {_x:200, _y:150}); Весь механизм такого появления авторских мувиков на прежних местах при возврате в первый кадр я вам не смогу объяснить, так как деталей сам не знаю, но с подобным сталкивался. Ну и другое решение - расположить все объекты в среде разработки в слоях заранее и не использовать swapDepth, ограничится авторским расположением объектов на отрицательных глубинах.
__________________
Идите первым! Последний раз редактировалось mooncar; 19.08.2010 в 22:34. |
|
|||||
|
спасибо, это понял.
а swapDepths(); нельзя будет использовать теперь? попробую аттачить. Другое решение тоже не подойдет, т.к. дубликаты потом нужно будет куда-то располагать, а они становятся выше чем прицел по глубине. а вообще спасибо, наверное придется аттачить, хотя так нехотелось. дай бог при аттаче глюков не будет |
|
|||||
|
Модрон-ветеринар
|
При аттаче изначально и всегда используются положительные глубины, глюков не будет.
Кстати, теперь смело можете использовать swapDepths(), поведение программно вытащенных на сцену мувиков будет предсказуемым. При проектах со сложностью более 1 кадра и переходах назад с глубинами программно лучше не работать. И вообще - всегда все делать в одном кадре. Это лучшая практика. Дополню. Не обязательно аттачить всё. Создавайте в авторское среде контейнеры для разных групп мувиков на разных слоях. И внутри контейнеров также можно использовать уже собственные глубины, относящиеся именно к данному мувику-контейнеру. При этом сам конетйнер будет лежать всегда выше или ниже других контейнеров, которые в авторской среде были выше или ниже его по слоям. Таким образом мы можем гибко управлять видимостью и порядком наложения объектов, как при создании сцен, так и по ходу выполнения кода, сочетая все это.
__________________
Идите первым! Последний раз редактировалось mooncar; 19.08.2010 в 22:50. |
![]() |
![]() |
Часовой пояс GMT +4, время: 14:26. |
|
|
« Предыдущая тема | Следующая тема » |
|
|