Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

scorpyons

Problema para Avançados parte 2

Recommended Posts

Galera, o Antonio me ajudou a resolver um probla com a animação e o xml. Agora estou com um problema na transição de cores de cada item. Baixei a classe "mc_tween2.as" e nessa classe tem uma função colorTo, que faz a transição de cores. No XML adiciobei um atributo CORES, e para cada item uma cor. EX: color"0x000000". Criei a propriedade atual.cor para pegar as cores no XML de cada item, e na função released adicionei o colorTo(); Não sei o pq não está mudando as cores correspondente a cada item. Ele sempre muda para a mesma cor. Alguém sabe uma solução pra isso ??? Abraços

 

#include "mc_tween2.as"

 

import mx.utils.Delegate;

import mx.transitions.Tween;

import mx.transitions.Easing.*;

 

var panel:MovieClip = _root.createEmptyMovieClip("panel", _root.getNextHighestDepth());

var mask:MovieClip = _root.createEmptyMovieClip("mask", _root.getNextHighestDepth());

var stroke:MovieClip = _root.createEmptyMovieClip("stroke", _root.getNextHighestDepth());

var holder:MovieClip = _root.createEmptyMovieClip("holder", _root.getNextHighestDepth());

//var tholder:MovieClip = panel.createEmptyMovieClip("tholder", panel.getNextHighestDepth());

var thumb:MovieClip;

var thumbX:Number = 5;

 

var ouvinte:Object = new Object();

var loader:MovieClipLoader = new MovieClipLoader();

var home:MovieClip = this;

var thumbX:Number = 55;

var xml:XML = new XML ();

 

loader.addListener(ouvinte);

 

xml.ignoreWhite = true;

 

function galeria(pLista:Array):Void {

qtd = pLista.length;

for (var i:Number=0; i<qtd; i++) {

//trace(i);

var atual:MovieClip = _root.attachMovie("item", "item"+i, i+1);

//atual.icon.inner.loadMovie(pLista.attributes.image);

loader.loadClip(pLista.attributes.image,atual.icon.inner);

atual.content = pLista.attributes.content;

atual.cor = pLista.attributes.cor;

atual.reflexo.inner.loadMovie(pLista.attributes.image);

atual.funcao = pLista.attributes.funcao;

var tw3:Tween = new Tween(atual,"_x",Bounce.easeOut,atual._x,thumbX,5,false);

var tw4:Tween = new Tween(atual,"_y",Bounce.easeOut,atual._y,400,5,false);

var tw5:Tween = new Tween(atual,"_alpha",Bounce.easeOut,0,100,15,false);

atual.icon.onRelease = released;

anterior = atual.cor;

atual._x = thumbX;

thumbX += 180;

}

}

 

function released () {

for (var i:Number = 0; i<qtd+1; i++) {

fundo.colorTo(atual.cor,3);

atual.theScale = atual._xscale;

atual.xPos = atual._x;

atual.yPos = atual._y;

var atual:MovieClip = home["item"+i];

if(atual != this._parent) {

var tw:Tween = new Tween(atual,"_xscale",Strong.easeOut,atual._xscale,0,1,true);

var tw2:Tween = new Tween(atual,"_yscale",Strong.easeOut,atual._yscale,0,1,true);

var tw3:Tween = new Tween(atual,"_alpha",Strong.easeOut,100,0,1,true);

}

else {

var tw:Tween = new Tween(atual,"_xscale",Strong.easeOut,atual._xscale,100,1,true);

var tw2:Tween = new Tween(atual,"_yscale",Strong.easeOut,atual._yscale,100,1,true);

var tw3:Tween = new Tween(atual,"_x",Strong.easeOut,atual._x,200,1,true);

var tw4:Tween = new Tween(atual,"_y",Strong.easeOut,atual._y,320,1,true);

var tw5:Tween = new Tween(theText,"_alpha",Strong.easeOut,0,100,1,true);

theText.text = atual.content;

var s:Object = this;

}

var s:Object = this;

tw.onMotionStopped = function()

{

s.onRelease = unReleased;

}

}

}

 

function unReleased()

{

fundo.colorTo(0x000066,3);

delete this.onRelease;

var tw:Tween = new Tween(theText,"_alpha",Strong.easeOut,100,0,0.5,true);

for(var i=0;i<qtd;i++)

{

var atual:MovieClip = home["item"+i];

if(atual != this._parent)

{

var tw:Tween = new Tween(atual,"_xscale",Strong.easeOut,0,atual.theScale,1,true);

var tw2:Tween = new Tween(atual,"_yscale",Strong.easeOut,0,atual.theScale,1,true);

var tw3:Tween = new Tween(atual,"_alpha",Strong.easeOut,0,100,1,true);

}

else

{

var tw:Tween = new Tween(atual,"_xscale",Strong.easeOut,100,atual.theScale,1,true);

var tw2:Tween = new Tween(atual,"_yscale",Strong.easeOut,100,atual.theScale,1,true);

var tw3:Tween = new Tween(atual,"_x",Strong.easeOut,atual._x,atual.xPos,1,true);

var tw4:Tween = new Tween(atual,"_y",Strong.easeOut,atual._y,atual.yPos,1,true);

tw.onMotionStopped = function()

{

for(var i=0;i<qtd;i++)

{

var atual:MovieClip = home["item"+i];

atual.icon.onRollOver = Delegate.create(atual.icon,over);

atual.icon.onRollOut = Delegate.create(atual.icon,out);

atual.icon.onRelease = Delegate.create(atual.icon,released);

}

}

}

}

}

 

xml.onLoad = function (success:Boolean) {

if (success) {

galeria (this.firstChild.childNodes);

}

}

 

xml.load("site.xml");

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, resolvi o problema !!!

 

criei um array

var cor:Array = new Array();

no for da função galeria

cor = pLista.attributes.cor;

e coloquei a função no else do released

fundo.colorTo(cor, 4);

Abraços !!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.