Siguiendo el tutorial de precargas en AS 3 personalice un poco mi clase
Precarga.as
Código :
package{ //--------------------------------------------------------- LIBRERIAS import flash.display.*; import flash.events.*; public class Precarga extends MovieClip{ //--------------------------------------------------------- PROPIEDADES private var Porciento:Number; private var TotalBytes:Number; private var BytesCargados:Number //--------------------------------------------------------- EVENTOS public var alProgreso:Function; public var alCompletar:Function; //--------------------------------------------------------- METODOS private function LoadProgress(evento:ProgressEvent):void{ TotalBytes = evento.bytesTotal; BytesCargados = evento.bytesLoaded; Porciento = Math.round((BytesCargados*100)/TotalBytes); alProgreso.call(this,Porciento,TotalBytes,BytesCargados); } private function LoadComplete(evento:Event):void{ alCompletar.call(this); } //--------------------------------------------------------- CONSTRUCTOR function Precarga():void{ this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, LoadProgress); this.loaderInfo.addEventListener(Event.COMPLETE, LoadComplete); } } }
Top.fla
En la pelicula se encuentran solo dos frames, uno con los elementos de la precarga y el otro donde se encuentra un MC con el contenido de la aplicacion.
En el primer fotograma de mi pelicula tengo lo siguiente...
Código :
stop(); import Clima; var miClima:Clima = new Clima(); var Maxima:Number = 0; var Minima:Number = 0; var Tiempo:String = "soleado"; var Tiempo2:String = ""; var Ciudad:String = "Guadalajara"; var CiudadTXT:String = "guadalajara"; // Funciones de la precarga alProgreso = function(Porciento:Number,Total:Number,Cargados:Number){ Loading_mc.gotoAndStop(Porciento); Loading_mc.Etiqueta_mc.Porciento_txt.text = String(Porciento) + "%"; } alCompletar = function(){ miClima.RutaFuente = "clima_ciudad.asp" miClima.UsarASP = true; miClima.CodigoCiudad = CiudadTXT; miClima.ObtenerClima(); } // funciones para obtener el clima miClima.ClimaCargado = function(exito:Boolean){ if(exito){ trace("Obteniendo clima"); Maxima = Number(this.TMax); Minima = Number(this.TMin); Tiempo = EvaluarTiempo(this.Tiempo); }else{ trace("Clima no cargado"); } nextFrame(); } miClima.Status = function(mensaje:String,esError:Boolean){ trace(mensaje); } function EvaluarTiempo(tiempo:String):String{ var frame:String = ""; switch(tiempo){ case "medionublado": frame = "nublado"; Tiempo2 = "Medio nublado"; break; case "soleado": frame = "soleado"; Tiempo2 = "Soleado"; break; case "ligera": frame = "ligera"; Tiempo2 = "Lluvia ligera"; break; case "fuerte": frame = "fuerte"; Tiempo2 = "Lluvia fuerte"; break; case "moderado": frame = "fuerte"; Tiempo2 = "Lluvia moderada"; break; case "tormenta": frame = "tormenta"; Tiempo2 = "Tormenta"; break; default: frame = "soleado"; Tiempo2 = "Soleado"; } return frame; }
Muchas gracias por su atención, espero su respuesta, hasta luego!!