![]() |
|
||||||||||
|
|||||
|
Картинки загружаются в _root. На все загруженные картинки устанавливается _visible=false
После чего функция, формирующая слои, имеющая на входе номер слоя и его координаты делает картинки входящие в слой видимыми. проблема в том, что при последовательном запуске этой функции для разных слоев, показывается только последний слой с соответствующими для данного слоя картинками. Я понял, что проблема в глубине и происходит вытеснение видимых клипов теми, которые отрабатываются функцией позже. Как такое может быть и как побороть? |
|
|||||
|
принимаются любые предположения. Уже голову сломал
![]() |
|
|||||
|
функция-загрузчик, вроде без проблем
function loader(nameObj,pic,depth){//Загрузка фоновых картинок
var picture = this.createEmptyMovieClip(nameObj,depth);
var tempMovie=picture.createEmptyMovieClip("temp",0);
picture._visible=false; //делаем картинку невидимой
var newPicture1:MovieClipLoader=new MovieClipLoader();
newPicture1.loadClip(pic,tempMovie);
}
Функция, формирующая ссылки для загрузки картинок из XML function makeLinks(){//создание ссылок для загрузки
for(index in elements){ //elements - массив содержащий имена картинок
st=elements[index].toString();
full=st.split(";");
//Формирование ссылок к картинкам
for(rr=0;rr<full.length;rr++){
link_str=full[rr].toString();
if(link_str.indexOf("src")!=-1){
link=link_str.substring(11);
}
depth=index; //Устанавливаем глубину равную индексу массива элементов
}
index="aaa"+index;
loader(index,link,depth);// Вызываем загрузчик для каждой картинки
}
}
function trace_layers(num_layer,xx,yy){//Функция разбора элемента массива layers
makeLinks();//загружаем все картинки
str=layers[num_layer].toString
my_array=str.split(";");
foo=my_array.toString();
per=foo.indexOf("id_element=");
for(i=0;i<my_array.length;i++){
arr=my_array[i].toString();
back=arr.indexOf("element_id id");
if(back!=-1) {back_id=arr.substr(14); //индекс картинки из XML
b_id=eval("aaa"+back_id);
b_id._visible=true;
b_id._x=xx;
b_id._y=yy;
}
}}
![]() |
|
|||||
|
Цитата:
|
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
Ужас, а не код.
Если я правильно вас понял, то ваша проблема была в том, что при каждом вызове trace_layers (), у вас вызывалася makeLinks (); Соответственно, после второй загрузки, все ранее загруженные объекты сбрасывались. |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:04. |
|
|
« Предыдущая тема | Следующая тема » |
|
|