Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   SwapDepths level & depths (ясность?) (http://www.flasher.ru/forum/showthread.php?t=29136)

MegaBug 25.03.2002 16:48

SwapDepths level & depths (ясность?)
 
Вопросы уже по Swapdepths были... и все же я хотел бы быть увереным точно....
1) Можно грузить в target можно в depths
2) MovieClip's должны быть на одном level
3) depths вроде как не level.
4) this.swapDepths( 5);
- у меня чтонибудь должно быть на этом 5?

В тоже время я не пойму почему у меня не получается....
....а мне то всего надо чтобы при нажатии мышки мувик
становился выше всех, а потом при отпускании мышки убирался обратно

Papa Karlo 25.03.2002 18:30

...

Papa Karlo 25.03.2002 18:32

Вложений: 1
упс

DeliMIter 25.03.2002 19:13

Результаты чистого эксперимента. Для шестого в любом клипе (в т.ч. в руте) глубина начинается с -16383, здесь лежит графика самого глубокого лэйера (слоя), если она есть, или самый нижний на слое мувик. Если это графика, то индекс глубины следующего объекта увеличивается на +1, если клип - на +2. Каждый следующий в слое клип имеет индекс глубины +2 относительно предыдущей занятой глубины. Следующий лэйер начинается, соответственно с индекса +2 по отношению к самому верхнему клипу первого слоя (+1 если в первом слое толлько графика). Дальше все повторяется. После графики +1, после клипа +2.
attachMovie, swapDepth и т.д. оперируют именно с этими глубинами. Т.е. чтобы твой клип убирался вниз, на прежнее место, тебе нужно вычислить его реальную глубину и возвращаться swapDepth'ом на нее.

Удачи.

MegaBug 26.03.2002 18:42

Спасиб..
 
Спасиб...пойду разбираться....

Еще интересная штука, я почемуто думал, что если грузить в таргет, то мувик будет на месте объекта с которым меняется т.е. потеряет свои координаты....но был неправ....

MegaBug 26.03.2002 18:54

А как определить изначально, какой самый верхний?
 
Правда у меня не 2 мувика а намного больше...
походу нужно в переменной хранить имя самого верхнего и с ним меняться... А как определить изначально, какой самый верхний?

Papa Karlo 26.03.2002 19:07

mc.getDepth();

MegaBug 27.03.2002 10:50

SwapDepths+goto = Глюк
 
Вложений: 1
В zip-архиве 2 примера - один попроще, другой понавороченней, но суть таже....
Долго не мог понять в чем прикол: если использовать SwapDepths в одном фрейме - все нормально.
А вот если сначала с помощью GotoAndStop на другой фрейм, подвигать мувики, а потом обратно - глючит...
Причем по-разному....впрочем сами увидите...
Но вот как с этим бороться (и жить)?

Papa Karlo 27.03.2002 11:34

Я посмотрел только с окнами.
Конечно глючит - когда возвращаешся на "One", highest опять становится '2', что скорее всего совсем не так. Поэтому поставь флаг: в "One"
if(!first){
_level0:highest = "2";
}
в "two"
first=true;
Во втором примере неглядя подозреваю похожую проблему.

DeliMIter 27.03.2002 18:03

Какой у тебя при редактировании самый верхний, такой и при работе... А еще можешь создать отдельный слой с клипом в котором прозрачная графика и меняться местами именно с ним.

MegaBug 28.03.2002 17:25

Вложений: 1
Я еще когда предыдущий посылал - подумал, что ошибся, но вот суть похоже всетки в другом....Вот файлик - тут ни функции, ни переменные не переопределяются, и всеравно - глючит....

DeliMIter 28.03.2002 21:54

Вложений: 1
2MegaBug

Ты супер!!! Я тащусь!!!!! :p
Это, надо тебе сказать, то ли макромедийный мегабаг, то ли еще чего. Я поэксперементировал чуть-чуть, и выходит вот что: в понятие инстанса входит понятие глубины. Если переходя на некий фрейм плэйер не находит инстанса на нужной глубине - он создает новый инстанс, при всем при том, что ссылка действует на единственно верный - первый инстанс. Поэтому если хочешь избежать глюков - делай все в одном фрейме.

Пример прилагается. Найди там attachMovie или duplicateMovieClip :cool:

MegaBug 29.03.2002 11:29

Вся трагичность заключается в том, что мне все это надо проделать со SmartClip'ом, и всякие duplicateMovieClip и attachMovie мне не помогут - переменные потеряются....

DeliMIter 29.03.2002 12:11

Еще раз говорю - надо все делать в одном фрейме. А аттачей никаких у меня там нету...

MegaBug 29.03.2002 19:45

Нельзя мне в одно фрейме - проект большой, как в одном фрейме сделаешь? Неужто ничего сделать нельзя? Блин, похоже и правда глюк...Но как с таким никто, кроме меня мог не сталкиваться, непонимаю....

DeliMIter 01.04.2002 16:36

Я сталкивался, еще под пятым, но я тогда не понял, с чем именно. Та же самая ситуация была. Но там не было необходимости менять глубину, я просто вынес нужный мне клип на верхний слой. А тебе могу посоветовать два пути:

1. Перед переходом возвращать смещенные клипы на их места...
1а. ..записывая текущее положение и восстанавливая после перехода

2. Все таки сделать такую вложенность, чтобы твои клипы были в таймлайне с одним фреймом, а длинные таймлайны лежали на более низких уровнях. Я уверен, что все можно решить.

MegaBug 01.04.2002 17:18

Спасибо....пойду подумаю как это наваять....


Часовой пояс GMT +4, время: 17:32.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.