Форум 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)
-   -   loadVariblesNum (http://www.flasher.ru/forum/showthread.php?t=110603)

Sam Russ 05.04.2008 16:05

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

Код:

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 показывает переменную нормально, последующий код успевает выполниться проигнорировав переменную. Что делать?

вот файл

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 - но я что то уже просто вывихнул мозг на этой теме и решил не продолжать. Кстати вот сайт который я сделал :) Оказалось очень прикольно не делая сайтов и вообще не подходя к компу 5 лет вспомнить старые времена :)

Sam Russ 06.04.2008 16:55

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


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

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