Ir para conteúdo

POWERED BY:

Arquivado

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

leandro santiago

Fazer função de class parar

Recommended Posts

Olá Galera

 

Tenho o codigo que realiza o movimento de camadas.

Como faço um botão que pare a o movimento realizado pela class?

Talvez parando a função...

 

class TelaPrincipal
{
    var _alvo, camada0, teste, camada1, camada3, camada4, camada5, camada6, _parent, width, wRect, hRect, mouseX, xRect, yRect, ret, scrollRect;
    function TelaPrincipal(alvo)
    {
		_alvo = alvo;
        camada3 = _alvo.camada3;
        camada5 = _alvo.camada5;
		camada3.limite = new flash.geom.Rectangle(0, 0, 2560, 600);
        camada5.limite = new flash.geom.Rectangle(0, 0, 2090, 600);
        this.moverCamadas(3);
        this.moverCamadas(5);
};
	
    function dispatchEvent()
    {
    } // End of the function
    function addEventListener()
    {
    } // End of the function
    function removeEventListener()
    {
    } // End of the function
	
	function moverCamadas(id)
    {
        var camada = this["camada" + id];
        camada.alvo = _alvo;
        camada.xRect = 0;
        camada.yRect = 0;
        camada.wRect = Stage.width;
        camada.hRect = camada._height;
        camada.width = camada.limite.width;
        camada.ret = new flash.geom.Rectangle(camada.xRect, camada.yRect, camada.wRect, camada.hRect);
        camada.mouseX = 0;
        camada.onEnterFrame = function ()
        {
            if (width < Stage.width)
            {
                width = Stage.width;
            } // end if
            wRect = Stage.width;
            hRect = camada._height;
            mouseX = mouseX + (_level0._xmouse - mouseX) * 1.500000E-001;
            var _loc2 = mouseX / wRect * 100;
            xRect = _loc2 * (width - wRect) / 100;
            ret = new flash.geom.Rectangle(xRect, yRect, wRect, hRect);
            scrollRect = ret;
        };
    } // End of the function
    var CLICK_CLUBIBINHO = "clickClubinho";
} // End of Class

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode fazer esse botão mudar o valor de uma variável booleana. E condicionar a execução do bloco que faz o movimento ao valor dessa variável.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloquei assim na class

 

	function TelaPrincipal(alvo)
    {
		function teste(a) {

        _alvo = alvo;
        camada3 = _alvo.camada3;
        camada5 = _alvo.camada5;
		camada3.limite = new flash.geom.Rectangle(0, 0, 2560, 600);
        camada5.limite = new flash.geom.Rectangle(0, 0, 2090, 600);
        this.moverCamadas(3);
        this.moverCamadas(5);
}
};

e para realizar a função:

 

main.teste(a);

Compartilhar este post


Link para o post
Compartilhar em outros sites

:huh:

 

a ideia que dei era criar a variavel:

 

var anima:Boolean;

condicionar a execução do bloco onde a animação é feita ao valor dessa variável:

 

if(anima){
 //aqui o bloco onde faz a animação
}

e no botão, você controla o valor dessa variavel:

 

btn.addEventListener(MouseEvent.CLICK, btn_onClickHandler);
function btn_onClickHandler(e:MouseEvent):void{
 anima = !anima;
}

no caso você só teria que usar um método publico para passar o valor da variável do palco (que vai ser mudada pelo botão), para uma propriedade da classe (que vai ser verificada para fazer a animação ou não)

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.