PDA

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


tandem
25.10.2005, 15:45
Можно ли сделать так чтобы загруженные переменные работали во всём ролике, а не только в конкретном мувике или root.

И ещё почему как только мувик, в который загружено текстовое поле с переменной, принимает участие в твининге, то переменная перестаёт загружаться (undefined).

Vertax
25.10.2005, 15:59
Как тебе сказать. Если они загружены в первом кадре _root'а то они видны ото всюду, но обращаться нужно один хрен через _root. Чтобы небыло такого глюка в твине нужно подгружать в текстовое поле переменную каждый ключевой кадр.

iNils
25.10.2005, 16:20
через _global

tandem
25.10.2005, 17:27
теперь ситуация такая:
loadVariables("menu.txt", this);
menu1 - переменная из menu.txt
почему trace(menu1) - выдаёт undefined? А если сделать динамическое поле с именем menu1, то оно отобразит menu1 нормально.

iNils
25.10.2005, 17:32
Потому что trace срабатывает до получения данных. А вот при загрузке, текстовое поле с именем переменной из файла, получает значение автоматически.

tandem
25.10.2005, 18:06
Ладно пусть так, но он всё равно не грузит, может посмотирте кому не в облом?

iNils
25.10.2005, 19:00
Все данные грузятся в _root, а у тебе текстовые поля вложенные в мувиклипы, поэтому данные не видят их.

tandem
25.10.2005, 19:16
Все данные грузятся в _root, а у тебе текстовые поля вложенные в мувиклипы, поэтому данные не видят их.
ты же говорил, что это можно исправиить с помощью _global?
как?

iNils
25.10.2005, 22:06
Я имел ввиду, что переменные объявленные через _global видны везде.

tandem
26.10.2005, 12:19
Я имел ввиду, что переменные объявленные через _global видны везде.
Слушай, что-то не пойму как правильно объявить через _global?
Черкни пример пожалуйста...

Бармалей
26.10.2005, 12:27
_global.text = _root.text;
теперь можешь обращаться к переменной просто как к text из любого мува, если конечно нет локальных переменных с таким именем

EscGP
26.10.2005, 12:39
Юзаешь так если надо что бы переменная была видна глобально а не локально:

var jopa = true; // локально. Доступна в этом мувике.
_global.jopa = true;// глобально. Доступна отовсюду.

потом можешь в любом мувике прописать например trace(_global.jopa) и trace выдаст true. Главное опредилить ее раньше trace.
var не нужен при добавлении в _global, так как _global - это обьект и jopa не переменная а его свойство.

tandem
26.10.2005, 12:56
_global.text = _root.text;
теперь можешь обращаться к переменной просто как к text из любого мува, если конечно нет локальных переменных с таким именем
Не фига: пишет undefined...
в первом кадре _root пишу:
loadVariables("menu.txt", this);
_global.menu1 = _root.menu1;
в мувике в первом кадре, где динам поле с переменной menu1 пишу:
m1 = _root.menu1;

помоему, что-то не так пишу...

iNils
26.10.2005, 14:50
в txt файле напиши не menu1=asdfasdf
а полный путь до menu1

tandem
26.10.2005, 17:04
в txt файле напиши не menu1=asdfasdf
а полный путь до menu1
спасибо, ну наконец-то получилось, тока не понимаю, если вё так просто, то зачем все развели такую дискуссию о _global и тому подобное?

motor4ik
26.10.2005, 17:28
а массивы можно какнить лоаднуть? вернее записать их вообще реально в файл?

motor4ik
26.10.2005, 17:38
впринципе можно как 80 переменных по 80 чисел разделеных разделителем, а потом во флэш раздербанить фсе это в массив, так я понял?

iNils
26.10.2005, 18:35
спасибо, ну наконец-то получилось, тока не понимаю, если вё так просто, то зачем все развели такую дискуссию о _global и тому подобное?
это был ответ на
Можно ли сделать так чтобы загруженные переменные работали во всём ролике, а не только в конкретном мувике или root.
я решил, что ты не хочешь использовать пути для описания где лежит переменная, а хочешь в любой месте просто указав ее имя получить ее значение.