Problema com LocalConnection conectar ao ActionScript 1 swf

votos
0

Estou construindo uma aplicação de shell que irá carregar outros swf dentro dele com base em qual capítulo e qual seção o usuário está. O escudo é escrito em ActionScript 3 e está carregando vários swfs AS3, AS2 e AS1 dentro dele. Estou usando LocalConnection após os AS2 e AS1 swf foram carregados para definir a variável correta para flash para encontrar o arquivo XML direito de carregar para esse capítulo / swf. Até agora eu não tive problemas com swfs carregamento AS2, mas os 2 ou 3 swfs AS1 que tenho simplesmente não parecem para definir e carga em tudo. Eu tenho feito muito pouco trabalho com AS1 na outra passado do que a depuração ou a configuração de código antigo, então eu estou querendo saber se eu só estou faltando algo realmente óbvio?

Aqui está o código para carregar e conectar-se ao swf AS1 de AS3:

AS1SWF = evt.target.content;
sendSwf_lc = new LocalConnection();
addChild(AS1SWF);
stopPlayback(fileID);

private function stopPlayback(fileID:String):void {
sendSwf_lc.send(LocalConnection, init, fileID, English);
}

Aqui está o código na aplicação AS1 para receber essa chamada LocalConnection.

var conn:LocalConnection;
conn = new LocalConnection();
conn.connect(LocalConnection);

conn.init = function(chapter, language) {

drillFile = matching/xml/+chapter+.xml;
drill = new XML();
drill.ignoreWhite = true;
drill.onload = getDrillXML;
drill.load(drillFile);
this.close();
}

function getDrillXML() {
trace(Application is starting now!);
//Rest of code
}

Eu, obviamente, deixou algumas coisas, mas é aí que o swf começa a ... Ele vai carregar o swf AS1 corretamente e enviar a variável correta e disparar a função init. Ele não vai bater a função getDrillXML para o evento onLoad. Eu testei isso com XML funcionamento e XML não-funcionamento, ela vai definitivamente lançar uma mensagem de erro ao carregar se o caminho XML está incorreta, então quando eu estou fazendo isso corretamente é definitivamente carregar o XML correto. Eu tenho uma instrução de rastreamento no topo da função getDrillXML e que nunca aparece, por isso tem que ser algo que envolve a classe XML em AS1 e não colocar adequadamente o arquivo XML, terminando a carga e, em seguida, passar para a função especificada depois de pronto.

Eu testei isso sem o LocalConnection e apenas difícil codificação das variáveis ​​em lá com o swf local e ele funciona muito bem, tudo carrega para cima e o aplicativo funciona como pretendido.

Tem mais alguém já se deparou com isso antes? É este um problema de escopo? Estou faltando alguma coisa a partir da versão AS1 das classes LocalConnection ou XML? O arquivo é publicado em um swf flash player 6.

Obrigado por qualquer ajuda!

Publicado 09/12/2008 em 17:56
fonte usuário
Em outras línguas...                            


1 respostas

votos
1

suspiro

Eu não escrevi o código para a aplicação AS1 e eu não sei por que isso funcionou quando o SWF é um aplicativo independente, mas por que ele não funciona quando ele é carregado dentro de um aplicativo shell AS3, mas o evento xml onLoad é mis-escrito como onload no swf originais. Eu não posso acreditar que eu desperdicei todo esse tempo em algo tão trivial haha, cara ... Às vezes, a codificação pode ser deprimente.

Graças a quem ler este, ao meu próximo dor de cabeça!

Respondeu 09/12/2008 em 18:47
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more