Hace unos días solicite ayuda por un problema con XML y no obtuve respuesta, lo que me hace sospechar que fui algo parco en mis explicaciones. A ver si ahora lo consigo.
tengo un fotograma con un menu principal. Uno de los botones del menu conduce al segundo fotograma, donde tengo una serie de imágenes cargadas mediante xml en un carrusel.
En ese segundo fotograma tengo un botón para regresar al menú, pero cuando regreso me encuentro con el carrusel del segundo fotograma sobre mi menú principal.
¿Cómo puedo decirle al botón de regresar al menú que no cargue el xml?
Pego todo el chorro de código porque al ser heredado no lo controlo:
Código :
var numOfItems:Number;
//tamaño de la circunferencia del carrusel
var radiusX:Number = 400;
var radiusY:Number = 100;
//posiciona el carrusel
var centerX:Number = Stage.width /2.14 ;
var centerY:Number = Stage.height /2;
var speed:Number = 0.05;
var perspective:Number = 130;
var home:MovieClip = this;
theText._alpha = 0;
var folder:String = "thumbnails/";
var tooltip:MovieClip = this.attachMovie("tooltip","tooltip",10000);
tooltip._alpha = 0;
var xml:XML = new XML();
//ignora los espacios en blanco existentes en el xml
//xml.ignoreWhite = true;
xml.onLoad = function()
{
var nodes = this.firstChild.childNodes;
numOfItems = nodes.length;
for(var i=0;i<numOfItems;i++)
{
var t = home.attachMovie("item","item"+i,i+1);
t.angle = i * ((Math.PI*2)/numOfItems);
t.onEnterFrame = mover;
t.toolText = nodes[i].attributes.tooltip;
t.content = nodes[i].attributes.content;
t.icon.inner.loadMovie(folder + nodes[i].attributes.image);
t.r.inner.loadMovie(folder + nodes[i].attributes.image);
t.icon.onRollOver = over;
t.icon.onRollOut = out;
t.icon.onRelease = released;
}
}
function over()
{
//BONUS Section
var sonido:Sound = new Sound();
sonido.attachSound("sover");
sonido.start();
sonido.setVolume(100);
home.tooltip.tipText.text = this._parent.toolText;
home.tooltip._x = this._parent._x;
home.tooltip._y = this._parent._y - this._parent._height/2;
home.tooltip.onEnterFrame = Delegate.create(this,moveTip);
home.tooltip._alpha = 100;
}
function out()
{
delete home.tooltip.onEnterFrame;
home.tooltip._alpha = 0;
}
function released()
{
//BONUS Section
var sonido:Sound = new Sound();
sonido.attachSound("sdown");
sonido.start();
sonido.setVolume(100);
home.tooltip._alpha = 0;
for(var i=0;i<numOfItems;i++)
{
var t:MovieClip = home["item"+i];
t.xPos = t._x;
t.yPos = t._y;
t.theScale = t._xscale;
delete t.icon.onRollOver;
delete t.icon.onRollOut;
delete t.icon.onRelease;
delete t.onEnterFrame;
if(t != this._parent)
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,0,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,0,1,true);
var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,100,0,1,true);
}
else
{
// parametros para escalar y posicionar las imágenes cuando pinchamos en ellas
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,100,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,100,1,true);
var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,420,1,true);
var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,580,1,true);
var tw5:Tween = new Tween(theText,"_alpha",Strong.easeOut,0,100,1,true);
theText.text = t.content;
var s:Object = this;
tw.onMotionStopped = function()
{
s.onRelease = unReleased;
}
}
}
}
function unReleased()
{
//BONUS Section
var sonido:Sound = new Sound();
sonido.attachSound("sdown");
sonido.start();
sonido.setVolume(100);
delete this.onRelease;
var tw:Tween = new Tween(theText,"_alpha",Strong.easeOut,100,0,0.5,true);
for(var i=0;i<numOfItems;i++)
{
var t:MovieClip = home["item"+i];
if(t != this._parent)
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,0,t.theScale,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,0,t.theScale,1,true);
var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,0,100,1,true);
}
else
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,100,t.theScale,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,100,t.theScale,1,true);
var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,t.xPos,1,true);
var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,t.yPos,1,true);
tw.onMotionStopped = function()
{
for(var i=0;i<numOfItems;i++)
{
var t:MovieClip = home["item"+i];
t.icon.onRollOver = Delegate.create(t.icon,over);
t.icon.onRollOut = Delegate.create(t.icon,out);
t.icon.onRelease = Delegate.create(t.icon,released);
t.onEnterFrame = mover;
}
}
}
}
}
function moveTip()
{
home.tooltip._x = this._parent._x;
home.tooltip._y = this._parent._y - this._parent._height/2;
}
xml.load("thumbnails/icons.xml");
function mover()
{
this._x = Math.cos(this.angle) * radiusX + centerX;
this._y = Math.sin(this.angle) * radiusY + centerY;
var s = (this._y - perspective) /(centerY+radiusY-perspective);
//escalado inicial de las imágenes
this._xscale = this._yscale = s*50;
this.angle += this._parent.speed;
this.swapDepths(Math.round(this._xscale) + 100);
}
//controla la velocidad de giro. + alto = + lento
this.onMouseMove = function()
{
speed = (this._xmouse-centerX)/8000;
}Muchas gracias!!!
