Comunidad de diseño web y desarrollo en internet online

Ayuda con codigo por favor!!!!... muchas gracias

Citar            
MensajeEscrito el 26 Dic 2008 09:33 pm
Tengo este codigo, es un carrusel de imagenes, esto lo encontre en un link de este foro, esto funciona a la perfeccion en la linea principal de tiempo de la misma pelicula del carrusel

entonces lo que deseo es ver como puedo hacer esto
1. Mover este codigo para dentro de un movieclip... y siga funcionando (ya que lo muevo y no funciona)
2. Tengo una pelicula principal (no la del carrusel)... y quiero cargar este carrusel con loadmovie... si pongo el loadMovie(""); en la linea principal de la pelicula se carga perfectamente... pero si trato de hacerle el loadMovie a un movieclip... mc.loadMovie(""); ya no carga...

que puedo hacer?

muchas gracias
saludos
Leo



Código :

// ++++ Carrusel v1.0 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ajustes para la carga del xml
System.useCodepage = true;
XML.prototype.ignoreWhite = true;
// para no tener que escribir la ruta completa de las clases que usaremos más adelante
import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Matrix;
// -----------------------------------------------------------------------------
// ----- ajustes personalizables -----------------------------------------------
// -----------------------------------------------------------------------------
// ancho carrusel en px
var ancho_carrusel:Number = 614;
// ancho de miniatura en su punto máx (en el centro del carrusel) en px
var ancho_miniatura:Number = 90;
// velocidad en escala inversa, cuanto menor sea su valor más rápido gira
var v_giro:Number=30;
var reflejar:Boolean = true;
// color de fondo para que el reflejo quede bien
var color_fondo:Number = 0xF4F4F4;
// array donde metemos los elementos del XML
var x0:Number = 307;
var y0:Number = 310;
var url_fotos:String = "xml.xml";
var dir_minis:String = "img/";
// ------------------------------------------------------------------------------
// ----- fin ajustes personalizables --------------------------------------------
// ------------------------------------------------------------------------------
// objeto XML que carga la lista de miniaturas
// Hasta aquí hemos definido una serie de ajustes iniciales.
var IMG_array:Array;
var incre:Number = 0;
var num_fotos:Number;
var num_fotos_cargadas:Number;
var radio:Number = (ancho_carrusel-ancho_miniatura-10)*0.5;
var miniaturasXML:XML = new XML();
miniaturasXML.onLoad = cargarMiniaturas;
miniaturasXML.load(url_fotos);
// funcion que se ejecuta al cargar el XML
function cargarMiniaturas():Void {
   IMG_array = this.firstChild.childNodes;
   //num_fotos = 9;
   num_fotos = IMG_array.length;
   var contenedor:MovieClip = _root.createEmptyMovieClip("contenedor_mc", _root.getNextHighestDepth());
   contenedor._y = y0;
   contenedor._visible = false;
   var carrusel:MovieClip = contenedor.createEmptyMovieClip("carrusel_miniaturas_mc", contenedor.getNextHighestDepth());
   // lo posiciono donde nos conviene
   carrusel._x = x0;
   //carrusel._y = y0;
   num_fotos_cargadas = 0;
   for (var k:Number = 0; k<num_fotos; k++) {
      crearMiniatura(IMG_array[k].attributes.nombre,k);
   }

}
function crearMiniatura(ruta:String, orden:Number):Void {
   //trace("ruta = "+ruta);
   // clip contendrá la imagen
   var clip:MovieClip = contenedor_mc.carrusel_miniaturas_mc.createEmptyMovieClip("foto_"+orden, contenedor_mc.carrusel_miniaturas_mc.getNextHighestDepth());
   clip.forceSmoothing = true;
   var dentro:MovieClip = clip.createEmptyMovieClip("foto", clip.getNextHighestDepth());
   dentro.forceSmoothing = true;
   clip.orden = orden;
   // para cargar la miniatura definimos un objeto MovieClipLoader
   // y un objeto detector de eventos
   var mi_mcl:MovieClipLoader = new MovieClipLoader();
   var miListener:Object = new Object();
   mi_mcl.addListener(miListener);
   // cargamos la imagen
   mi_mcl.loadClip(dir_minis+ruta,dentro);
   //mi_mcl.loadClip("http://www.tutoriales-flash.com//miniaturas/"+ruta,dentro);
   miListener.onLoadStart = function(target_mc:MovieClip) {
      // cuando comienza la carga de la imagen
      // ponemos al _alpha a 0
      target_mc._alpha = 0;
   };
   miListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number) {
         trace("En progreso");
        //Declaramos la variable de calculo de porcentaje
      var porcentaje:Number;
   //Calculamos el porcentaje con las variables que le llegan por parametro a la función
   porcentaje = Math.round((bytesLoaded*100)/bytesTotal);
   
   textoo = porcentaje + "%"
   //Vamos al frame del porcentaje en nuestra barra de carga
   //_root.barra_mc.gotoAndStop(porcentaje);
   //Ahora escondemos el objeto de la precarga y lo frenamos
   //target_mc._visible = false;
   //target_mc.stop();

   };
   // cuando ya se ha completado la carga y tenemos disponible el clip
   miListener.onLoadInit = function(target_mc:MovieClip) {
      //target_mc.smoothBitmap();
      var coef:Number = target_mc._width/ancho_miniatura;
      target_mc._height = int(target_mc._height/coef);
      target_mc._width = ancho_miniatura;
      target_mc._alpha = 100;
      target_mc._x = -(int(target_mc._width*0.5));
      target_mc._y = 0;
      target_mc.onRelease = function() {
         // acciones al hacer clic en la foto 
         if (ruta.indexOf(".jpg") != -1) {
            var temp_array:Array = ruta.split(".jpg");
            //getURL("http://google.com/"+temp_array[0], "_blank");
            _root.bigpic._x = 87;
            _root.bigpic._y = 10;
            genericLoad("peli.swf", _root.bigpic);
         } else {
            getURL("http://www.tutoriales-flash.com", "_blank");
         }
      };
      num_fotos_cargadas++;
      trace("onLoadInit: "+orden+" | cargadas: "+num_fotos_cargadas+"/"+num_fotos);
      if (num_fotos_cargadas>=num_fotos) {
         setTimeout(_root.girar_carrusel,500);
      }
   };
}
function girar_carrusel() {
   contenedor_mc._y = y0-contenedor_mc._height;
   if (reflejar) {
      var reflejo:MovieClip = _root.createEmptyMovieClip("reflejo_miniaturas_mc", _root.getNextHighestDepth());
      reflejo._yscale = -100;
      reflejo._y = contenedor_mc._y+contenedor_mc._height*2+1;
      var myMatrix:Matrix = new Matrix();
      myMatrix.createGradientBox(ancho_carrusel,contenedor_mc._height,Math.PI/2,0,-15);
      var sombreado:MovieClip = _root.createEmptyMovieClip("sombreado_mc", _root.getNextHighestDepth());
      var colors:Array = [color_fondo, color_fondo, color_fondo];
      var alphas:Array = [40, 90, 100];
      var ratios:Array = [0, 160, 255];
      sombreado.beginGradientFill("linear",colors,alphas,ratios,myMatrix);
      sombreado.moveTo(0,0);
      sombreado.lineTo(ancho_carrusel,0);
      sombreado.lineTo(ancho_carrusel,contenedor_mc._height);
      sombreado.lineTo(0,contenedor_mc._height);
      sombreado.lineTo(0,0);
      sombreado._y = y0+1;
      sombreado._x = x0-sombreado._width*0.5;
      //_root.marca.swapDepths(_root.getNextHighestDepth());
   }
   delete contenedor_mc.onEnterFrame;
   contenedor_mc.onEnterFrame = function() {
      incre += (_root._xmouse-x0)/_root.v_giro;
      for (var k:Number = 0; k<=num_fotos; k++) {
         this.carrusel_miniaturas_mc["foto_"+k].girar();
      }
      if (reflejar) {
         var bmp:BitmapData = new BitmapData(ancho_carrusel+100, this._height, true, 0x00000000);
         var myRectangle:Rectangle = new Rectangle(0, 0, ancho_carrusel+100, this._height);
         bmp.draw(this,new Matrix(),new ColorTransform(),"normal",myRectangle,true);
         _root.reflejo_miniaturas_mc.attachBitmap(bmp,1,"auto",true);
      }
   };
   contenedor_mc._visible = true;
}
MovieClip.prototype.girar = function() {
   var degrees:Number = _root.incre+(360*this.orden/num_fotos);
   var radians:Number = degrees*Math.PI/180;
   if (Math.sin(radians)<0) {
      this._alpha = 15;
   } else {
      this._alpha = 100;
   }
   this._x = radio*Math.cos(radians);
   this._xscale = (1-Math.cos(radians+Math.PI*0.5))*99-99;
   this.swapDepths(int(this._xscale*10));

}; 

Por lecaro

50 de clabLevel



 

Cuba

firefox
Citar            
MensajeEscrito el 27 Dic 2008 03:08 am
Aplicando esto mismo que esta aca...

http://www.cristalab.com/tutoriales/15/precargas-swf-y-jpg--en-flash-con-moviecliploader.html

el carrusel no carga... se ve que carga la pelicula, porque muestra el back de la misma, pero no llega a cargar el carrusel...

ayuda por favor
gracias

Por lecaro

50 de clabLevel



 

Cuba

firefox
Citar            
MensajeEscrito el 27 Dic 2008 04:49 am
Quita los "_root" e intenta de nuevo.

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

chrome
Citar            
MensajeEscrito el 27 Dic 2008 12:54 pm
Muchisimas gracias Freeddi...

saludos....

Muchas felicidades!

Por lecaro

50 de clabLevel



 

Cuba

firefox

 

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