PDA

Просмотр полной версии : loadVariblesNum


Sam Russ
05.04.2008, 16:05
Народ! Помогите разобраться! Я подгружаю переменную из внешнего файла, на основании этой переменной размножаю клипы, но почему, то

loadVariablesNum("jpegnum.txt", 2);
function checkParamsLoaded() {
if (_level2.done == undefined) {
trace("not yet.");
} else {
trace("finished loading. killing interval.");
trace("-------------");
for (i in _level2) {
trace(i+"="+_level2[i]);
}
trace("-------------");
clearInterval(param_interval);
}
}
var param_interval:Number = setInterval(checkParamsLoaded, 100);
//требуемая переменная nr, trace её показывает нормально.
но последующий код выполняется без неё :(
k = 0;
for (i=1; i<=nr; i++) {
_root.seta.createEmptyMovieClip("box"+i, k);
duplicateMovieClip(_root.seta.phbutt, "butt"+i, k-nr);
k++;
loadMovie(i+".jpg", _root.seta["box"+i]);
setProperty(_root.seta["box"+i], _x, i*130-40);
setProperty(_root.seta["box"+i], _y, 349);
setProperty(_root.seta["butt"+i], _x, i*130-40);
setProperty(_root.seta["butt"+i], _y, 349);
_root.seta["vari"+i] = "big"+i+".JPG";
_root.seta["butt"+i].onRelease = function() {
loadpic(65, 20, "big"+i+".jpg", 100, 100, 50);
};
}
stop();

хотя trace показывает переменную нормально, последующий код успевает выполниться проигнорировав переменную. Что делать?

вот файл (http://www.artbrathers.ru/photo-gallery.rar)

Sam Russ
06.04.2008, 00:59
Неужели никто не сталкивался с такой проблемой?

iNils
06.04.2008, 01:11
Мало кому охота разбираться в коде 8-ми летней давности. Я как только вижу в коде "setProperty" так сразу теряю интерес.

silin
06.04.2008, 01:13
>>хотя trace показывает переменную нормально, последующий код успевает выполниться проигнорировав переменную

этот код должен быть там же где и trace, т.е. в checkParamsLoaded..

ps согласен с iNils: loadVariablesNum,setProperty, etc - кунсткамера полная..)

Sam Russ
06.04.2008, 01:30
2silin - а нельзя ли прокомментировать? А попробовал переписать в checkParamsLoaded, но результат не воспоследовал.
Заранее благодарен.

silin
06.04.2008, 01:53
в твоей схеме 'последующий код' выполняется сразу после запроса на загрузку (но данные-то еще не пришли)
trace же ты смотришь, когда данные уже пришли
ну и..
function checkParamsLoaded() {
if (_level2.done == undefined) {
trace("not yet.");
} else {

var nr = _level2["nr"];
//дальше делай с ней что нужно
for (i = 1; i <= nr; i++) {
//...
}

}
}

Sam Russ
06.04.2008, 02:12
Спасибо silin - к сожалению, видимо это не с моей головой решать, вроде сделал всё как нужно, но всё сваливается в бесконечный цикл и зависает. Наверное проще дать денег прогеру чтобы он за 5 мин сделал как надо. Сорри за оффтоп - если кто из Москвы сделает недорого - welcome.
С уважением.

silin
06.04.2008, 10:27
>>всё сваливается в бесконечный цикл..

clearInterval(param_interval) там где ты данные получил и обработал не забыл случаем?

Sam Russ
06.04.2008, 16:51
Спасибо silin - но я что то уже просто вывихнул мозг на этой теме и решил не продолжать. Кстати вот сайт (http://artbrathers.ru) который я сделал :) Оказалось очень прикольно не делая сайтов и вообще не подходя к компу 5 лет вспомнить старые времена :)

Sam Russ
06.04.2008, 16:55
Мне показалось проще каждый раз от руки ставить во флешке количество фотографий в папке, хотя конечно считать их динамически было бы ловко и прикольно, но я как в том анекдоте - Дяденька! Я не настоящий сварщик, я просто маску на стройке нашёл :).
Всем удачи и спасибо за советы :)