![]() |
вопрос о swapDepth
Привет,
на сцене n дублированных мувиков. n=10; for(i=1,i<=n,i++){ dublicateMovieClip ("myMov", "myMov_" + i, i); } Удалим myMov_i. Теперь нужно чтобы myMov_10 переместился на depth 3 и поменял свое имя с myMov_10 на myMov_3. Что делаю: on (press) { unloadMovie(_root.myMov_3); } on (release) { name_to_swap = "_root.myMov_10"; name_to_swap = eval(name_to_swap); name_to_swap.swapDepths(3); new_swap = "myMov_3"; name_to_swap._name = new_swap; } конда первый раз кликаю мувик(бывший myMov_10 а теперь myMov_3), то через trace видно, что все нормально, и depth и имя мувика изменились. Но при втором клике имя остается тем же а вот depth становится 11. подскажите как сделать так чтобы depth не менялся спасибо |
Ну у тебя при втором клике
eval(name_to_swap)==undefined// _root.myMov_10 - не существует. Чего ж ты хочешь? Как написал, так и есть. Я так и не понял чего надо при втором клике/а третьем?/ и вообще чего надо? Чтоб скрипт срабатывал только один раз - поставь условие типа if(tttt==undefined){ работает скрипт; tttt++; } хотя это конечно элементарщина и чего тебе надо на самом деле можно только догадываться. :p |
большое спасибо за ответ, но....
мувики на сцену грузятся при нажатии на кнопку А (сколько раз нажмем столько и загрузится), а удаляются при нажатии на кнопку Б, которая лежит в другом мувике - Меню.
Мувики - myMov_(i) можно перетаскивать на сцене (в каждом есть кнопка а на ней Drug & Drop). Так же их можно поворачивать и удалять. Кликнув на мувик я его тем самым "выделяю", т.е передаю его адрес кнопке Б(в мувик Меню). Это делается для того чтобы кнопка знала какой именно из дублированных объектов следует удалить. В myMov_(i) как я уже говорил есть кнопка, там такой код.... on (release){ .... _root.curSelDep = this.getDepth();// _root.Menu.name_del = this;// trace("thisDep="+_root.curSelDep); trace("thisName=" +_root.Menu.name_del); .... } после удаления со сцены myMov_3 (с третьего уровня), на его место должен перейти myMov_10 (с 10-го) и изменить свое имя на myMov_3. Что происходит: 1. Удаляю, myMov_3 исчезает со сцены 2. Кликаю на myMov_10, trace показывает thisDep=3 thisName=_level0.myMov_3 3. еще раз кликаю тотже мувик(перетащить например мне его захотело сь). теперь вижу thisDep=11(????????????????) thisName=_level0.myMov_3 в чем дело не соображу =(((( |
инетересно а когда я имя меняю у мувика, может быть флэш его стирает а потом грузит на самый верхний уровень???
|
Re: большое спасибо за ответ, но....
Вложений: 1
Цитата:
А вот зачем менять дубликатам имена и вложенность - въехать не могу.Объясни. ;) |
да вот то то и оно, что это я уже сделал (немного не так как у тебя правда) и не стал бы беспокоить по пустяковым вопросам
делаю я конструктор. пользователь должен иметь возможность свободно манипулировать объектами myMov:сождавать, двигать, поворачивать и в любом порядке удалять их. (это я сделал)Дальше он переходит в другой фрейм, где мне нужно знать точное количество объектов их имена и координаты, чтобы я мог их сортировать.каждый myMove имеет переменные x, y, rotation. если он ничего не удалил со сцены то, их имена: Код:
MyMov_1Код:
MyMov_1Другого пути кроме как переименовать объект я не придумал пока. а при переименовании начинается чехорда с уровнями. т.е надо и переимновать и поменять уровень |
Цитата:
|
Вложений: 1
Глянь.
Осталось удалить пустые элементы. |
большое спасибо
Спасибо за помощ, массив получился, я и не знал, что по undefined можно ставить условие типа если == undefined то ..., и вообще массивы в actionScript достаточно гибкий инструмент. Я боялся что если я попытаюсь запихнуть в массив несуществующий объект (myMov_(i) который я удалил) то он ругаться будет. а на самом деле просто undifined сказал и пошел дальше
а еще мне очень понравилась строчка Код:
_root["myMov_"+jjj]._name = _root["myMov_"+jjj]._name+1000;Большое спасибо Штрек, что ты мне взялся помоч. что-то никто больше и не откликнулся :D |
Re: большое спасибо
Цитата:
|
| Часовой пояс GMT +4, время: 23:03. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.