Comunidad de diseño web y desarrollo en internet online

Problema al cargar XML en flash

Citar            
MensajeEscrito el 15 Mar 2009 05:14 pm
Hola, tengo un problema bastante extraño. Tengo un xml llamado "sm". En flash quiero cargarlo entonces uso esto:

Código :

load("sm.xml");

Entonces lo pruebo y me aparece un error diciendo que no se puede cargar "C:\carpeta\undefined"
:? Porque sucede esto?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Mar 2009 10:02 pm
Alguien sabe porque sucede esto :? ?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 16 Mar 2009 06:28 am
Podrias postear el codigo de carga completo, desde la declaracion del objeto XML.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 16 Mar 2009 10:41 pm
ok aqui está:

Código :

//Aqui se crea un nuevo objeto XML
cancion = new XML();
//se ignora los espacios en blanco
cancion.ignoreWhite = true;
//Se crea un nuevo elemento sound
var mi_sound:Sound = new Sound();
cancion.onLoad = function(ok) {
   if (ok) {
//si es ok, carga esto
      _root.bg_mc.loadMovie(this.src_image);
      _root.bg_video.attachVideo(this.vid_video);
      _root.mi_sound.loadSound(this.mp3_sound,true);
   }
};
//ahora debe cargar el xml 
function cargarXML() {
   cancion.load("sm.xml");
}

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 17 Mar 2009 02:15 am
Hola, el XML se ve que carga bien. yo creo que tu problema no es el XML, a lo mejor es con el:

Código :

_root.mi_sound.loadSound(this.mp3_sound,true);


Dale un trace para ver que pasa

Código :

_root.mi_sound.loadSound(this.mp3_sound,true);
trace("Esto pasa -> " + this.mp3_sound);

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 17 Mar 2009 09:02 pm
He probado lo que me diste, y no funciona, ni si quiera aparece la ventana "Salida". Que puede ser?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 17 Mar 2009 09:34 pm
coloca esto:

Código ActionScript :

function cargarXML() {
   trace( "->" + cancion.load("sm.xml") );
}


Y dime que es lo que te sale, con todo y el error tal cual.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 17 Mar 2009 10:08 pm
Creé un boton para que carge la funcion (creo que funciona mejor así) y me aparecio la ventana con esto:

"->true
Error opening URL 'file:///C|/ultrabaile/undefined'
Error opening URL 'file:///C|/ultrabaile/undefined' "
:?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 17 Mar 2009 10:28 pm
Pues el load saca true, significa que si carga el XML. el problema debe ser en otro lado.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 17 Mar 2009 10:34 pm
hmmm pero que puede ser? aqui el xml si hay problemas:

Código :

<cancion id="latortura_lv" mp3="hiphop1.mp3"> 
   <flecha position="9000" key="UP" nivel="1"/> 
   <flecha position="12000" key="DW" nivel="2"/> 
   <flecha position="15000" key="LF" nivel="3"/>  
   <fondo src="bg.jpg"/> 
   <fondo vid="video.flv"/>
</cancion> 

:?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Mar 2009 12:16 am
ah mira el problema es porque no has parseado el xml:

Código ActionScript :

_root.bg_mc.loadMovie( this.firstChild.childNodes[0].attributes.src);
_root.bg_video.attachVideo( this.firstChild.childNodes[1].attributes.vid);


Cambia el XML por este:

Código XML :

<cancion id="latortura_lv" mp3="hiphop1.mp3"> 
   <fondo src="bg.jpg"/> 
   <fondo vid="video.flv"/>
   <flecha position="9000" key="UP" nivel="1"/> 
   <flecha position="12000" key="DW" nivel="2"/> 
   <flecha position="15000" key="LF" nivel="3"/>  
</cancion> 


Suerte.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 18 Mar 2009 12:41 am
Al parecer me detectó el jpg pero no carga la imagen en el mc. Ademas sigue apareciendome undefined en el vid y no detecta el mp3 :?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Mar 2009 12:55 am
Bueno ahora probe de nuevo el xml y funciona pero tuve que cambiar el nombre del audio a "undefined" sin ".mp3" y funcionó! :?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Mar 2009 01:46 am
xD

Bueno mira esta es la forma correcta de cargar un video:

Código ActionScript :

var my_video:Video; //my_video es un objeto Video del escenario
var my_nc:NetConnection = new NetConnection();
my_nc.connect(null);
var my_ns:NetStream = new NetStream(my_nc);
my_video.attachVideo(my_ns);
my_ns.play("video1.flv");


Te recomiendo uses el componente mediaDisplay, busca sobre el en la ayuda de flash, a ese solo le das una ruta y funciona. Suerte.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 18 Mar 2009 01:58 am
Tambien funcionó lo que me diste pero lo mas importante es esto:

Código :

   <flecha position="9000" key="UP" nivel="1"/>  
   <flecha position="12000" key="DW" nivel="2"/>  
   <flecha position="15000" key="LF" nivel="3"/>

Como muestro un movieClip y como hago un setInterval o Position que sea compatible con XML? :?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Mar 2009 04:00 am
igual para acceder a esos datos es con:

this.firstChild.childNodes[2].attributes.position
this.firstChild.childNodes[2].attributes.key
this.firstChild.childNodes[2].attributes.nivel

this.firstChild.childNodes[3].attributes.position
this.firstChild.childNodes[3].attributes.key
this.firstChild.childNodes[3].attributes.nivel

mira por ejemplo creamos una variable llamda index y ejecutamos una funcion, algo como esto:

Código ActionScript :

var index:Number = 2; //uso el dos porque los 2 primeros eran para el video y el bg
var tempo:Number = setInterval( this, "flechar", 100 );

function flechar( Void ):Void
{
   if( tu_sonido.position == cancion.firstChild.childNodes[index].attributes.position - 2000 )
   {
      //Creamos una felcha que debe llegar en 2 segundos   
      var clip:MovieClip = crearFlecha( cancion.firstChild.childNodes[index].attributes.key );
      clip.posicion = cancion.firstChild.childNodes[index].attributes.position;
      clip.key = cancion.firstChild.childNodes[index].attributes.key;
      clip.onEnterFrame = function()
      {
            if( validarTecla( this.posicion, this.key ) )
            {
                  delete this.onEnterFrame;                  
                  this.correcto();
                  this._root.sumarMarcador();
            }
      };
   }
}


Algo masomenos asi debe ser, pero eso es muy exacto tendriamos que hacer muchas mas validaciones, hay que implementar esas funciones, sumarMarcador, correcto y validarTecla.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 18 Mar 2009 08:52 pm
ya, pero no entiendo el codigo, podrias explicarlo? :P

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Mar 2009 09:39 pm
U_U

Bueno aqui va:

Código ActionScript :

var index:Number = 2; //uso el dos porque los 2 primeros eran para el video y el bg 
var tempo:Number = setInterval( this, "flechar", 100 ); //Creamos el intervalo
 
function flechar( Void ):Void //funcion que se ejecuta cada cierto tiempo
{ 
//Si la posicion del sonido es igual a la posicion en donde debe ser apretada la felcha, menos 2 segundos
//  me refiero a menos 2 segundos porque es lo que tarda la flecha en subir desde que aparece hasta que sea
//  presionada
   if( tu_sonido.position == cancion.firstChild.childNodes[index].attributes.position - 2000 ) 
   { 
      //Creamos una felcha que debe llegar en 2 segundos, esta funcion debe crear una flecha de cierto tipo y colocarla
      // en el scenario ya con la animacion de que suba y llege en 2 segundos.
      var clip:MovieClip = crearFlecha( cancion.firstChild.childNodes[index].attributes.key ); 
      //Variables inciales
      clip.posicion = cancion.firstChild.childNodes[index].attributes.position; 
      clip.key = cancion.firstChild.childNodes[index].attributes.key; 
      clip.onEnterFrame = function() 
      { 
      //cada flecha se encarga ella misma de ver si se presiono una tecla, y si se esta en la posicion correca
            if( validarTecla( this.posicion, this.key ) ) 
            { 
                  //si es asi, la tecla muere y se toma como correcto.
                  delete this.onEnterFrame;                   
                  this.correcto(); 
                  this._root.sumarMarcador(); 
            } 
      }; 
   } 
} 


Masomenos asi. como te dije, hay que desarrollar esas funciones.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 18 Mar 2009 10:14 pm
He probado el codigo y funciona, pero a medias. La flecha no alcanza a ir arriba, se repite el movimiento de arriba abajo. :?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 19 Mar 2009 05:25 am
Bueno le faltan unos ajustes, es solo un boceto.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 20 Mar 2009 06:51 pm
pero este codigo lo puedo combinar con el otro que me diste una vez? :?

Por Brundows

131 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 May 2009 01:22 am
He creado un trace a algunas partes del codigo que me has dado, pero me marcan undefined =S que puede ser?:

Código ActionScript :

      trace("Es posible?:"+flechas_xml.firstChild.childNodes[index].attributes.posicion)
       trace("Es posible?:"+flechas_xml.firstChild.childNodes.attributes.arw)

y en la salida:

Código :

Es posible?:undefined
Es posible?:undefined

Por Brundows

131 de clabLevel



 

firefox

 

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