PDA

Просмотр полной версии : Можно ли постоянно проверять данные......


Slideing
19.07.2002, 19:46
Можно ли постоянно проверять данные из фаила, а при их изменении в прожеторе что чтонить менялось
Я пробовал:
ClipEvent (enterFrame) {
loadVariables ("config.ini", "");
if (_root.st>0) {
_root.c = "START";
}
}

Но видимо он не успевает считывать данные..... (((
Какие будут предложения ?

УильямБрэдберри
19.07.2002, 20:09
какая дикость...

УильямБрэдберри
19.07.2002, 20:13
вот код

var loader = _root.createEmptyMovieClip("loader",99);
loader.getData = function()
{
this.loadVariables ("config.ini");
}
loader.onData = function()
{
if(st>0)
{
_root.c = "START";
return;
}else
{
this.getData();
}
}
loader.getData();

код сработает один раз, как только изменится переменная st в текстовом файле

Nox Noctis
19.07.2002, 20:32
или то же самое чуть короче:
(loader=new LoadVars()).load("config.ini");
loader.onLoad = function() {
if (Number(this.st)>0) {
_root.c = "START";
return;
} else {
this.load("config.ini");
}
};

если тебе нужно контролировать именно изменение переменных - то создаешь сначала бэкапы текущих значений, а потом делаешь загрузку и сравниваешь с загруженными...

...но я не понимаю нафига такая дурь может понадобиться...
...дайте мне эту траву - я ее курить буду :D

2Брэдберри
а ты забыл поставить this и Number :p :p :p
(если я правильно понял, то 'st' - это загружаемая переменная)

Slideing
19.07.2002, 20:50
:D
А у меня проще получилось.... и не однин раз срабатывает а как только поменяешь знаечние !!! ГЫГЫГЫ ))) :D

onClipEvent (enterFrame) {
loadVariables ("config.ini", "");
if (st>0) {
_root.c = "start";
return;
} else if(st<=0){
_root.c = "stop";
loadVariables ("config.ini", "");
return;
}
}

Nox Noctis
19.07.2002, 21:32
во-первых тебе там нафиг не нужны ретурны... они там НИЧЕГО не делают :))

во-вторых
если st - это переменная загруженная из файла, то правильно твой код работать все равно не может.
потому что из файла все переменные приходят в виде строк и следовательно сравнение любой переменной из файла с нулем не имеет смысла до тех пор пока ты не поставишь Number :))

УильямБрэдберри
19.07.2002, 22:22
Оригинал написал(а) Nox Noctis

2Брэдберри
а ты забыл поставить this и Number :p :p :p
(если я правильно понял, то 'st' - это загружаемая переменная)

1 я не забыл, я опустил за ненадобностью. ;)
(2 Nox хотя, конечно ты прав - грамотнее прописывать и Нумберы и зисы.)

2 работать без Numbеr отлично будет, если там нет мусора...

2Slideing - то, что ты написал - неграмотно, с точки зрения синтаксиса.

УильямБрэдберри
19.07.2002, 22:26
Оригинал написал(а) Slideing
:D
А у меня проще получилось.... и не однин раз срабатывает а как только поменяешь знаечние !!! ГЫГЫГЫ ))) :D
}[/CODE]

хех.
а зачем я по-твоему функцию (loader.getData()) писал?

для того, чтобы вызываеть ее по требованию, а не вертеть enterFramы пока плэйер не свалится.

суть така:
вызвал loader.getData()
и оно крутится до тех пор, пока не сменится st..
как только сменилась - стоп-машина.
и никаких левых проверток.

Slideing
19.07.2002, 22:28
2УильямБрэдберри

Во всяком случае все корректно работает.... )))))))) Пасиба усем

УильямБрэдберри
19.07.2002, 22:29
Оригинал написал(а) Slideing
2УильямБрэдберри

Во всяком случае все корректно работает.... )))))))) Пасиба усем

да, пожалуйста, заходи еще ;)

с вопросом "ХЕЛП! ПАДАЕТ ПЛЭЙЕР во время выполнения кода!"

Slideing
19.07.2002, 22:30
))))))))

Nox Noctis
19.07.2002, 22:43
хм... ну ладно... но мне любое сравнение строки с числом как-то не нравится... си тому виной наверное :))
...не стоит оставлять конвертацию типов тупому компилятору :))