Comunidad de diseño web y desarrollo en internet online

funcionamiento de eval ()

Citar            
MensajeEscrito el 04 Abr 2006 04:23 pm
Hola, tengo el siguiente script:

Código :

loadVariablesNum("game_source.txt", 0);
var scene=5;

hold_question = "question_"+(scene);      //trace (hold_question);
question = eval(hold_question);            //trace (question);
esto carga un archivo externo y supuestamente con la funcion eval lo pasa a un cuadro de texto dinamico con nombre de variable question, lo hice asi por que lo vi funcionando en otro trabajo, pero no me funciona en el flash 8, es por la version o que estare haciendo mal? el nombre del archivo .txt es correcto y el contenido es algo asi como esto:

Código :

&question_5=This is the FIFTH questión!!!
pero al ejecutar no carga, les agradeceria que me dijeran que estoy haciendo mal o que me den otra idea para cargar la variable de otra forma...muchas gracias ;)

Por Finvara

807 de clabLevel



 

EL reino de los duendes...

firefox
Citar            
MensajeEscrito el 04 Abr 2006 04:44 pm
question.text = hold_question;
Será eso no?
Saludos.

Por Zah

BOFH

4290 de clabLevel

27 tutoriales
5 articulos

  Bastard Operators From Hell Editores

Zaragoza, España

firefox
Citar            
MensajeEscrito el 04 Abr 2006 05:11 pm
ok ya lo intente asi pero no funciona, tambien use set(question,hold_question); y en ambos casos ya no me aparece el undefined, ahora me aparece lo que pongo en el cuadro de texto para hacer referencia, pero sigue sin cargar la variable &question_5, ahora puedo suponer que no este cargando el archivo de texto correctamente, pero no podria asegurarlo por que no se como verificarlo, de todas formas como escribi antes, esto es de un ejemplo que funciona y no se que estare haciendo mal... gracias

Por Finvara

807 de clabLevel



 

EL reino de los duendes...

firefox
Citar            
MensajeEscrito el 04 Abr 2006 05:56 pm
Tendrás que esperar a que cargue?.
Posiblemente lo llamas antes de cargar completamente. Controla el fin de la carga y la llamada funcionará porque no tiene nada malo el code.

Por Teseo

SWAT Team

1780 de clabLevel

14 tutoriales

Genero:Masculino   SWAT

msie
Citar            
MensajeEscrito el 04 Abr 2006 06:00 pm
Creo que el problema es que no carga el archivo para cuando vos mostras la variable, para probar esta teoría, en el primer frame levantá el texto y en el frame 10, colocá el trace a ver si lo cargó (si tenés mucho texto poné más de 10 frames o probá con un achivo pequeño de una sola línea en el txt).

Si resulta que este es el caso, una solución sencilla sería: Colocá en el archivo txt una última linea que diga algo asi como: &cargado=ya&

usar 4 frames:
en el frame uno:
loadVariablesNum("game_source.txt", 0);
en el frame 2:
if (cargado=="ya"){
gotoAndPlay(4);
}
en el frame 3:
gotoAndPlay(2);
en el frame 4:
stop();
hold_question = "question_"+(scene);
trace (hold_question);
question = eval(hold_question);

Suerte.

Por La_Gata

123 de clabLevel



 

msie
Citar            
MensajeEscrito el 04 Abr 2006 06:27 pm
Efectivamente tenian razon, sin cambiar el primer codigo y haciendo el control sobre la carga del archivo externo, comprobe que si se estaba demorando en cargar el texto, ahora me surgen dos preguntas como siempre cuando soluciono o me solucionan (como en este caso) un problema, por que en el archivo original si carga bien, es decir no se demora en hacerlo y segundo, hay alguna forma de hacerlo en un solo frame o es muy complicado??? de todas formas muchisimas gracias por el tiempo que se tomaron para aclararme esta duda... ;)

Por Finvara

807 de clabLevel



 

EL reino de los duendes...

firefox
Citar            
MensajeEscrito el 04 Abr 2006 06:31 pm
Hay un tutorial por aquí para usar el objeto loadVar y controlar esta carga. Pero en términos de tiempo y velocidad el método que te indiqué es equivalente, éste es menos pesado por no usar una clase, pero te recomiendo leer el tutorial.

Por La_Gata

123 de clabLevel



 

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.