PDA

Просмотр полной версии : А loadVariables ваще массивы подгружает?


Horror
07.10.2004, 17:49
Из внешнего файла реально ли подгружать массив?
У меня чтото не выходит... Или можно только построчно по одной переменной?

Штрек
08.10.2004, 01:45
А что такой вариант не устраивает ? -
this.createEmptyMovieClip("arr_cont", 99);
arr_cont.loadVariables("arr_var.txt");
arr_cont.onData = function() {
arr = arr_cont.arr_znach.split(" ");
};//разделитель - пробел

Horror
08.10.2004, 13:34
Это все конечно хорошо, но интересует именно возможность загрузки массива. С единичными переменными то можно разобраться что делать :)

Nirth
08.10.2004, 13:42
esli massive budew redaktirovat tolko ti ili chelovek kotoriy razbiraetsa vo flash'e to ya tebe rekomenduu ne pihat masiv v TXT a luchwe sdelat ewe odin movik tipa - data.swf i tam pust budut masivi prichini na to dve
(1) - esli budet funciya "compress movie" to infa budet vesit minimum.
(2) masivi podgruzat nelza no mozno v nih zagonyat toze ya delal odno vremya eto tak.
esli v TXT est peremenie tipa

//num - chislo peremenih
num=3&button1=super&button2=puper&button3=extra&

to cikl primerno takoy.
for (i=0;i<num;i++) {
tempBut = eval("button"+i+1)
buttons[i] = tempBut;//tut mi zagonyaem ih v masiv Buttons.
}
[/code]
no kak ya uze skazal esli spisok knopok ne poluchaetsa s servera namnogo efectivney ispolzovat kakoy nit ewe movik s masivami.

Nox Noctis
08.10.2004, 13:51
Nirth, есть предложение не добывать огонь трением. есть более эффективные способы. :)
Оригинал написал(а) Horror
Это все конечно хорошо, но интересует именно возможность загрузки массива.тебе Штрек как раз сказал как это сделать.

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

например, в файле написано:
test=1,2,3,4,5,6,7,8,9,0
грузим эту переменную. получаем во флэше строку вида:
test = "1,2,3,4,5,6,7,8,9,0";
и есть чудо-функция split, про которую можно почитать в хэлпе.
test = test.split(",");
в результате всех операций получаем во флэше:
test = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];
что собственно и требовалось.

остаётся заметить, что loadVariables - это неудобно. лучше пользоваться LoadVars.load или XML.load (о них можно почитать в хэлпе)

Horror
08.10.2004, 14:49
Пасиб всем. Вразумили :)