Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   depth - и с чем его едят (http://www.flasher.ru/forum/showthread.php?t=34268)

Nox Noctis 11.07.2002 18:55

2greyshaman
насчет зачистки - зачем аттач, когда createEmptyMovieClip работает мгновенно (в отличие от аттача) :))
типа
this.createEmptyMovieClip("temp", any_clip.getDepth());
temp.removeMovieClip();
и все киляется :))

2blackhund
в пятерке есть один-единственный способ:
все дубликаты делаешь _внутри_ какого-то клипа... и если их нужно все сразу подсунуть под что-то, то просто делаешь swapDepths общего клипа с этим чем-то :))
правда по отдельности свопнуть дубликаты с чем-то _вне_ этого внешнего клипа - невозможно...

greyshaman 11.07.2002 19:05

2 Nox Метод не срабатывает на графике (полная зачистка ;) ).
в отличии от
duplicateMovieClip EmptyMovieClip
и attachMovie

Nox Noctis 11.07.2002 19:27

2greyshaman
"на графике" - это в смысле без мувиклипов вообще ?
свободная от мувиклипов графика убивается при
_root.createEmptyMovieClip("", -16383);
так что нет никакой разницы... ;))

DeliMIter 11.07.2002 19:48

А знаете ли вы, что

createEmptyMovieClip
attachMovie (?) - не тестировал
duplicateMovieClip

хотя про них и написано в хелпе

Returns

Nothing

но на самом деле возвращают ссылку на результат своей работы (если они и хотель сделать ретурн насынг, то это ассемблерный баг), соответственно

createEmptyMovieClip("Clip", 0)._x = 50;

делает именно то, что вы подумали?

Nox Noctis 11.07.2002 20:03

вообще это слегка не по теме конечно...
но это известная фича :)) хэлп дырявый :) даже с эрратой...
в коде часто можно увидеть что-т типа:
a = this.createEmptyMovieClip(....);

кстати, объект мувиклип - далеко не единственный, где ретурн не прописан, но действует: к примеру методы addListener всех объектов возвращают true когда установят лисенер :) но ни в хелпе ни в эррате к хелпу об этом ни слова :))

greyshaman 12.07.2002 10:58

Вернемся к теме. Про индексирование +2, это вы загнули, не сходится, просто ++.

Nox Noctis 12.07.2002 14:07

если просто создать клип, сделать кучу его дубликатов (Ctrl+D) а потом прогнать
for (i in _root) {
if (_root[i] instanceof MovieClip) {
trace(_root[i]+" :: "+_root[i].getDepth());
}
}
то порядок идет именно +2

видимо такой порядок может нарушиться при каких-то операциях... мне влом экспериментировать если честно :))

УильямБрэдберри 14.07.2002 19:07

Цитата:

Оригинал написал(а) DeliMIter
В хелпе макромедия ведет пропаганду за то, чтобы аттачить и дупликэйтить клипы на такие глубины как 0, 1, и тэдэ.
:)

Дело в том, что такая полезная штука, как removeMovieClip()
работает исключительно с положительными левелами.

-16384 - у нас _level root-а.

и если ты зааттачил или же создал клип в _level < 0
то просто так ты его не ремувнёшь.

отсюда же вытекает забавная фича - можно ремувить любой мувик, задав ему _level > 0 с помощью "swapDepths([_level > 0]);"

Nox Noctis 15.07.2002 16:48

Цитата:

Оригинал написал(а) УильямБрэдберри
Дело в том, что такая полезная штука, как removeMovieClip()
работает исключительно с положительными левелами.

зато unloadMovie работает с любыми левелами :))

и поясни насчет "swapDepths([_level > 0]);" :) че-то я не понял в чем пепс :)
swapDepths(_level>=-16384) работает нормально, а при _level<-16384 просто не работает, но ничего при этом не ремувит...

Nox Noctis 16.07.2002 20:57

-16384.....
....глубина, глубина, я не твой. отпусти меня, глубина...

:)))))))))))))


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

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