Vengo a pediros ayuda porque tengo un problema que no se resolver.
Tengo un codigo que me funciona y le añado otro, que por si solo tambien funciona, y juntos no lo hacen.
El primer codigo es este:
Código ActionScript :
//importamos las librerias
import fl.transitions.*;
import fl.transitions.easing.*;
import flash.display.Loader;
import flash.display.Sprite;
import flash.net.URLRequest;
import flash.events.*;
import flash.events.Event;
import flash.utils.Timer;
//creamos cargadores y cargamos en ellos las imagenes
var imagen1:Loader = new Loader();
imagen1.load(new URLRequest("http://www.mipagina.com/varios/balneario.jpg"));
var imagen2:Loader = new Loader();
imagen2.load(new URLRequest("http://www.mipagina.com/varios/cama.jpg"));
var imagen3:Loader = new Loader();
imagen3.load(new URLRequest("http://www.mipagina.com/varios/comedor.jpg"));
var imagen4:Loader = new Loader();
imagen4.load(new URLRequest("http://www.mipagina.com/varios/cama_azul.jpg"));
var imagen5:Loader = new Loader();
imagen5.load(new URLRequest("http://www.mipagina.com/varios/guarderia.jpg"));
var imagen6:Loader = new Loader();
imagen6.load(new URLRequest("http://www.mipagina.com/varios/hall.jpg"));
var imagen7:Loader = new Loader();
imagen7.load(new URLRequest("http://www.mipagina.com/varios/piscina.jpg"));
// Creamos Sprites que nos va a servir de contenedor para los cargadores de las imagenes
var contenedor0:Sprite = new Sprite();
var contenedor1:Sprite = new Sprite();
var contenedor2:Sprite = new Sprite();
var contenedor3:Sprite = new Sprite();
var contenedor4:Sprite = new Sprite();
var contenedor5:Sprite = new Sprite();
var contenedor6:Sprite = new Sprite();
// metemos los cargadores dentro de los contenedores
this.addChild(contenedor0);
contenedor0.addChild(imagen1);
this.addChild(contenedor1);
contenedor1.addChild(imagen2);
this.addChild(contenedor2);
contenedor2.addChild(imagen3);
this.addChild(contenedor3);
contenedor3.addChild(imagen4);
this.addChild(contenedor4);
contenedor4.addChild(imagen5);
this.addChild(contenedor5);
contenedor5.addChild(imagen6);
this.addChild(contenedor6);
contenedor6.addChild(imagen7);
// creamos el primer tween, pero le decimos que no inicie
var mov:Tween = new Tween(contenedor0, "alpha", Regular.easeOut, 0, 1, 1, true);
mov.stop();
// este for nos sirve para varias cosas:
for (var i = 6; i >= 0; i--)
{
//le damos su nombre correspondiente a todos los contenedores.
getChildAt(i).name = "contenedor" + i;
//los ponemos transparentes
getChildAt(i).alpha = 0;
//les damos el nivel inverso desde el que se han cargado (el mas alto el 0, el mas bajo el 6)
setChildIndex(getChildByName("contenedor" + i), numChildren - 1);
//cuando sea el contenedor0 empezaremos con la animación. De este modo no se hace sin que se vea.
if (getChildByName("contenedor" + i).name == "contenedor0")
{
mov.addEventListener(TweenEvent.MOTION_FINISH, espera1);
mov.start();
}
//trace(getChildByName("contenedor" + i).name + " --> " + getChildIndex(getChildByName("contenedor" + i)));
}
function espera1(e:TweenEvent):void
{
var mov:Tween = new Tween(contenedor1, "x", Regular.easeOut, 0, 0, 3, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, mover_contenedor0);
}
function mover_contenedor0(e:TweenEvent):void
{
contenedor1.alpha = 1;
var mov:Tween = new Tween(contenedor0, "x", Strong.easeIn, 0, -1500, 2, true);;
mov.addEventListener(TweenEvent.MOTION_FINISH, espera2);
}
function espera2(e:TweenEvent):void
{
setChildIndex(contenedor0, 0);
var mov:Tween = new Tween(contenedor2, "x", Regular.easeOut, 0, 0, 3, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, mover_contenedor1);
}
function mover_contenedor1(e:TweenEvent):void
{
contenedor2.alpha = 1;
var mov:Tween = new Tween(contenedor1, "x", Strong.easeIn, 0, -1500, 2, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, espera3);
}
function espera3(e:TweenEvent):void
{
setChildIndex(contenedor1, 0);
var mov:Tween = new Tween(contenedor3, "x", Regular.easeOut, 0, 0, 3, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, mover_contenedor2);
}
function mover_contenedor2(e:TweenEvent):void
{
contenedor3.alpha = 1;
var mov:Tween = new Tween(contenedor2, "x", Strong.easeIn, 0, -1500, 2, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, espera4);
}
function espera4(e:TweenEvent):void
{
setChildIndex(contenedor2, 0);
var mov:Tween = new Tween(contenedor4, "x", Regular.easeOut, 0, 0, 3, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, mover_contenedor3);
}
function mover_contenedor3(e:TweenEvent):void
{
contenedor4.alpha = 1;
var mov:Tween = new Tween(contenedor3, "x", Strong.easeIn, 0, -1500, 2, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, espera5);
}
function espera5(e:TweenEvent):void
{
setChildIndex(contenedor3, 0);
var mov:Tween = new Tween(contenedor5, "x", Regular.easeOut, 0, 0, 3, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, mover_contenedor4);
}
function mover_contenedor4(e:TweenEvent):void
{
contenedor5.alpha = 1;
var mov:Tween = new Tween(contenedor4, "x", Strong.easeIn, 0, -1500, 2, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, espera6);
}
function espera6(e:TweenEvent):void
{
setChildIndex(contenedor4, 0);
var mov:Tween = new Tween(contenedor6, "x", Regular.easeOut, 0, 0, 3, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, mover_contenedor5);
}
function mover_contenedor5(e:TweenEvent):void
{
contenedor6.alpha = 1;
var mov:Tween = new Tween(contenedor5, "x", Strong.easeIn, 0, -1500, 2, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, espera7);
}
function espera7(e:TweenEvent):void
{
setChildIndex(contenedor5, 0);
var mov:Tween = new Tween(contenedor0, "x", Regular.easeOut, 0, 0, 3, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, mover_contenedor6);
}
function mover_contenedor6(e:TweenEvent):void
{
var mov:Tween = new Tween(contenedor6, "x", Strong.easeIn, 0, -1500, 2, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, espera8);
}
function espera8(e:TweenEvent):void
{
setChildIndex(contenedor6, 0);
var mov:Tween = new Tween(contenedor1, "x", Regular.easeOut, 0, 0, 3, true);
mov.addEventListener(TweenEvent.MOTION_FINISH, mover_contenedor0);
}
y el segundo codigo es este:
Código ActionScript :
setChildIndex(btn0, numChildren - 1);
btn0.addEventListener(MouseEvent.CLICK, salto);
//lo que sigue es la funcion de salto a la imagen que queramos al pulsar el boton correspondiente
function salto(e:MouseEvent):void
{
trace("HOOLA!");
}
Los únicos objetos que tengo colocados son un boton que he creado y las copias que he hecho de éste (cada uno con su identificador distinto, claro
El error que me da es este:
Error #2078: No se puede modificar el nombre de propiedad de un objeto colocado en la línea de tiempo.
A ver si alguien me puede echar una mano.
Muchas gracias!!
Fran.
