Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Эффект "переднего плана" (http://www.flasher.ru/forum/showthread.php?t=87059)

Sezhes 27.10.2006 19:03

Эффект "переднего плана"
 
Добрый день!

Если кто-нибудь сможет посоветовать:

Необходимо добиться эффекта, при котором полупрозрачные объекты, находящиеся на разных слоях, изменяли бы свой порядок при действиях пользователя с ними, при этом не меняя своей степени прозрачности. То есть если, например, курсор наводится на объект, находящийся на нижнем слое, он "выплывает" на передний план и остается там до совершения следующего действия, а объект, до сих пор находившийся на переднем слое, "утапливается", скажем, на самый низ.
Местоположение объектов "в пространстве" (вправо-влево-вверх-вниз) при этом изменяться не должно.

Если у кого-нибудь есть идеи, как это сделать, поделитесь, пожалуйста!!! А то чего-то совсем не идет..

Заранее спасибо.
Валера.

Dendroid 27.10.2006 19:08

swapDepth() может помещать клипы наверх и не меняет остальных свойств клипа...

FourSide 27.10.2006 19:09

Объекты на сцену добавлены программно? Если нет, то незнаю.

Если добавлены программно (методами attachMovie, dublicateMovieClip или createEmptyMovieClip), то сменить вложенность можно через метод (примерно)
Код:

MovieClip.swapDepths(MovieClip._parent.getNextHighestDepth());

Хемуль 27.10.2006 23:52

Цитата:

Сообщение от Dendroid
swapDepth() может помещать клипы наверх и не меняет остальных свойств клипа...

Только не swapDepth, а swapDepths.

Sezhes 30.10.2006 11:30

Спасибо!

Sezhes 30.10.2006 13:17

Все-таки еще одно неясно - почему при простом скрипте вроде

_level7.swapDepths (_level5);

все отлично работает, а вот при попытке написать с помощью этого какую-либо функцию к другому объекту - нет. Ошибок не выдает,просто не работает.

Нужно-то чтобы не просто менялся порядок объектов, а чтобы он менялся каждый раз в ответ на определенные действия пользователя. Например, при обращении к определенному (другому) объекту.

С уважением, Валера.

Хемуль 30.10.2006 15:32

2 Sezhes:
Приведите ваш код, а то так не понятно, о какой функции вы говорите...
И, пожалуйста, опишите задачу более точно и конкретно. Я думаю, если вы это сделаете, вам смогут помочь. ^_^

Wolsh 30.10.2006 16:17

Ну например так вот

Код:

MovieClip.prototype.onRollOver = function(){
        this.swapDepths(_root.prev.getNextHighestDepth());
        _root.prev = this;
}
prev = zaga; // zaga - это имя самого верхнего клипа на момент запуска


esc 04.02.2007 22:52

у меня таже самая проблема.
2 клипа на сцене имена a и b.
на событие onPress назначен аттачмови определённого клипа из библиотеки.
нужно чтобы каждый раз при нажатии на a или b глубина, на которую аттачиться клип возростала. каким образом можно достичь? пробовал через count, тоесть
Код:

count = 1
"_level"+count

ничего не получается.
помогите.

Futs 05.02.2007 11:39

Код:

var count = 1
this._mc.onPress = function  () {
        _root.attachMovie("mc","mc"+count,count)
        count++
}



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

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