Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/12/2010, 09:47
SteveMachine
 
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 13 años, 11 meses
Puntos: 0
Cambiar fondos a cada hora del día con transición.

Buenas a todos. Antes hice la misma consulta continuando un tema antiguo y al parecer lo eliminaron. Si he hecho algo mal por favor indíquenmelo para no volver a repetirlo.

Mi caso es que estoy haciendo uso de un módulo de una plantilla. Este módulo se encarga simplemente de llamar a un archivo XML donde lee la ruta de las imágenes y el DELAY (tiempo de duración entre una imagen y otra).

En el action de flash se especifica el tiempo de TRANSICION (fundido) entre una imagen y otra.

Hasta ahí todo perfecto. Pero me gustaría que en vez de cambiar de imagen cada X segundos del DELAY, las cambie según la hora del día (24hs y 24 imágenes). Qué parámetros debería modificar para lograr este objetivo?

Les dejo el código del flash y luego el del XML:

stop ();
function duplicateImage(from, target)
{
var _loc1 = new flash.display.BitmapData(from._width, from._height);
_loc1.draw(from);
target.attachBitmap(_loc1, 1, true, true);
} // End of the function
ID = 0;
holder._alpha = 0;
_global.bgLoaded = false;
imageLoaded = function ()
{
_global.bgLoaded = true;
imageWidth = holder._width;
imageHeight = holder._height;
duplicateImage(holder, holder);
_parent.scalebg_mc();
var _loc3 = new mx.transitions.Tween(holder, "_alpha", mx.transitions.easing.Regular.easeOut, 0, 100, 150, false);
_loc3.onMotionFinished = function ()
{
holder2._visible = false;
if (total > 1)
{
timeInterval = setInterval(bgTimer, Delay);
} // end if
};
};
construct = function ()
{
for (i = 0; i < total; i++)
{
Image[i] = xmlNode.childNodes[i].attributes.Image;
} // end of for
Delay = xmlNode.attributes.Delay;
holder.loadMovie(Image[ID]);
};
bgTimer = function ()
{
clearInterval(timeInterval);
trace ("backGround timer");
ID = ID + 1;
if (ID == total)
{
ID = 0;
} // end if
holder2._visible = true;
duplicateImage(holder, holder2);
holder._alpha = 0;
holder.loadMovie(Image[ID]);
};
loadXML = function (loaded)
{
if (loaded)
{
xmlNode = this.firstChild;
Image = [];
total = xmlNode.childNodes.length;
construct();
} // end if
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("images/content.xml");

XML:

<content Delay="5000">
<bg Image="images/background1.jpg"/>
<bg Image="images/background2.jpg"/>
...
...
...
etc.
</content>

Desde ya muchas gracias a todos y saludos.