Comunidad de diseño web y desarrollo en internet online

Problemas al cargar un SWF externo que contiene XML

Citar            
MensajeEscrito el 01 Nov 2013 07:16 am
Estoy realizando un proyecto que consiste en un juego. Cada nivel se carga desde un swf externo. He querido hacerlo multilingue y en el primer fotograma tengo un swf que te permite seleccionar el idioma. Cuando lo ejecuto solo funciona perfectamente pero cuando lo cargo desde el principal me sale el siguiente error:
TypeError: Error #2007: El valor del parámetro text debe ser distinto de null.
at flash.text::TextField/set text()
at Idioma_fla::MainTimeline/init()
at fl.lang::Locale$/onXMLLoad()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()
He probado mil cosas y no funciona. solo funciona cuando no tengo ningun XML. Trabajo en AS3 y desde la linea de tiempo(no me regañeis por eso). Os dejo el codigo de los dos y muchas gracias por adelantado. PD: Como puedo hacer que se envien variables entre los difrentes swf en ambos sentidos??

AS idioma:
stop();

import fl.lang.Locale;
import flash.events.MouseEvent;
import flash.net.LocalConnection;

Locale.setDefaultLang("es");
Locale.setLoadCallback(init);

var miIdioma:String="es";

inicio.buttonMode=true;
inicio.mouseChildren=false;

btn_en.addEventListener(MouseEvent.CLICK, cambiar);
btn_es.addEventListener(MouseEvent.CLICK, cambiar);
btn_cat.addEventListener(MouseEvent.CLICK, cambiar);

function init(event:Boolean):void {
castellano.text =Locale.loadString("IDS_SPANISH");
ingles.text = Locale.loadString("IDS_ENGLISH");
catalan.text= Locale.loadString("IDS_CATALONIAN");
inicio.empezar.text=Locale.loadString("IDS_START");
}

function cambiar(event:MouseEvent):void {
switch (event.target.name) {
case "btn_es":
miIdioma = "es";
break;
case "btn_en":
miIdioma = "en";
break;
case "btn_cat":
miIdioma = "cat";
break;
}
Locale.loadLanguageXML(miIdioma);

}


AS principal:
stop();

var loader:Loader = new Loader();
loader.load(new URLRequest("Idioma.swf"));

loader.contentLoaderInfo.addEventListener(Event.COMPLETE, insertMovie);

function insertMovie(e:Event):void{
addChild(loader);

}

Espero respuesta

Por CRF23

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 01 Nov 2013 01:09 pm
La ruta a cualquier archivo siempre se computa desde la peli principal, así que si la peli que cargas no está en el mismo directorio que la principal, deberás corregir la ruta al archivo como si desde la princial se cargara

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 01 Nov 2013 01:27 pm
La dos peliculas estan en la misma carpeta y la ruta esta bien. He comprobado que si no cargo ningun XML funciona todo de maravilla. Me he imaginado que quizas era la ruta del XML donde estaba el error pero los dos XML: el de principal y el idioma tb estan en la misma carpeta. Por lo tanto todos ellos estan en la misma ruta relativa. Puede ser que el problema sea porque cargo el XML con Locale.LoadXML???? lo tendria que cargar con una nueva variable y sacar de ahi el locale??? Muchisimas gracias por la respuesta.

Por CRF23

1 de clabLevel



 

chrome

 

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