Estoy haciendo una galería en flash que carga fotos de un xml a un mc que tengo en dos capas del escenario. El código es este:
Código actionscript:
Luego tengo dos botones en otra capa con este otro código:Ver original
//CREAMOS MOVIECLIPS CONTENEDORES DE IMAGENES///////////////// _root.createEmptyMovieClip("imagen1_mc",1); _root.createEmptyMovieClip("imagen2_mc",2); ////////////////////////////////////////////////////////////// //ANALIZAMOS NODOS XML//////////////////////////////////////// function analiza_xml() { direcciones = new Array(); vinculos = new Array(); duraciones = new Array(); primer_nodo = imagenes_xml.childNodes; nodo_galeria = primer_nodo[0].childNodes; for (var j = 0; j<nodo_galeria.length; j++) { direcciones[j] = nodo_galeria[j].attributes.direccion; vinculos[j] = nodo_galeria[j].attributes.vinculo; duraciones[j] = nodo_galeria[j].attributes.duracion; } } /////////////////////////////////////////////////////////////// //FUNCION PRINCIPAL//////////////////////////////////////////// function muestra_imagen(cual) { var mclListener:Object = new Object(); mclListener.onLoadInit = function(objetivo_mc:MovieClip) { if (objetivo_mc == imagen1_mc) { objetivo_mc.swapDepths(imagen2_mc); alphaTween = new mx.transitions.Tween(_root.imagen2_mc, "_alpha", mx.transitions.easing.Regular.easeOut, 100, 0, 2, true); alphaTween2 = new mx.transitions.Tween(_root.imagen1_mc, "_alpha", mx.transitions.easing.Regular.easeOut, 0, 100, 2, true); } else { objetivo_mc.swapDepths(imagen1_mc); alphaTween = new mx.transitions.Tween(_root.imagen1_mc, "_alpha", mx.transitions.easing.Regular.easeOut, 100, 0, 2, true); alphaTween2 = new mx.transitions.Tween(_root.imagen2_mc, "_alpha", mx.transitions.easing.Regular.easeOut, 0, 100, 2, true); } if (vinculos[cual] != undefined) { objetivo_mc.onRelease = function() { getURL(vinculos[cual]); }; } else { objetivo_mc.onRollOver = function() { objetivo_mc.useHandCursor = false; }; } mi_duracion = duraciones[cual]; objetivo_mc.onEnterFrame = function() { var mi_fecha:Date = new Date(); milisegundos = mi_fecha.getTime(); if (hito == undefined) { hito = milisegundos; } milisegundos_pasados = milisegundos-hito; if ((milisegundos_pasados>1000*mi_duracion) or( _root.avance_inmediato==1)) { _root.avance_inmediato=0; hito = milisegundos; siguiente_imagen(); } }; }; var imagen_mcl:MovieClipLoader = new MovieClipLoader(); imagen_mcl.addListener(mclListener); if (imagen1_mc.getDepth()<imagen2_mc.getDepth()) { imagen_mcl.loadClip(direcciones[cual],imagen1_mc); } else { imagen_mcl.loadClip(direcciones[cual],imagen2_mc); } } ////////////////////////////////////////////////////////////// //SECUENCIA IMAGENES/////////////////////////////////////////// function siguiente_imagen() { if (cual == undefined) { cual = 0; } else { cual++; } if (cual == nodo_galeria.length) { cual = 0; } muestra_imagen(cual); } ////////////////////////////////////////////////////////////// //LEE XML////////////////////////////////////////////////////// var imagenes_xml:XML = new XML(); imagenes_xml.ignoreWhite = true; imagenes_xml.onLoad = function(success) { analiza_xml(); siguiente_imagen(); }; function lee_xml(que) { imagenes_xml.load(que); } lee_xml("pasefotos.xml"); stop();
Código actionscript:
Ver original
on (press) { _root.avance_inmediato = 1; _root.cual = 0; _root.carga_imagen(cual); }
Con esto consigo ir a una foto determinada, pero ¿como podría decirle que vaya a la foto siguiente o anterior, simplemente?
Espero que me podais ayudar.
Saludos