Comunidad de diseño web y desarrollo en internet online

animaciones con actionscript

Citar            
MensajeEscrito el 04 Jun 2005 06:25 pm
Quiero animar una linea que vaya creciendo hasta formar un rectangulo pero solo puedo lograr hacer 2 lados por que despues los if me entran en conflicto se que debe haber una forma sencilla de hacerlo pero no la veo

les agradezco mucho la ayuda que me puedan prestar

Código :

_root.createEmptyMovieClip("lienzo",1);
x=0;
y=0;
_root.lienzo.onEnterFrame = function(){
   if(x<=200){
   _root.lienzo.lineStyle(2,0x009900,100);
   _root.moveTo(100,100);
   _root.lienzo.lineTo(x,y);
     x=x+30;
   }else if(y<=200){
   _root.lienzo.lineStyle(2,0x009900,100);
                     _root.lienzo.lineTo(x,y);
        y=y+30;
   
   }   
}

Por jopoipo

19 de clabLevel



Genero:Masculino  

chile

msie
Citar            
MensajeEscrito el 06 Jun 2005 05:58 am
Quizás no sea la mejora manera pero funciona :wink:

Código :

_root.createEmptyMovieClip("lienzo",1); 
x=0; 
y=0; 
bandera=0;
bandera2=0;
_root.lienzo.onEnterFrame = function(){ 
   if((x<=200) && (bandera==0)){ 
   _root.lienzo.lineStyle(2,0x009900,100); 
   _root.moveTo(100,100); 
   _root.lienzo.lineTo(x,y); 
    x=x+30; 
   }else if ((y<=200) && (bandera2==0)){ 
        _root.lienzo.lineStyle(2,0x009900,100); 
        _root.lienzo.lineTo(x,y); 
        bandera=1;
        y=y+30; 
     } else if((x>=30) && (bandera==1)){ 
              _root.lienzo.lineStyle(2,0x009900,100); 
              _root.moveTo(100,100); 
              _root.lienzo.lineTo(x,y); 
              x=x-30;
              bandera2=1;
        } else if ((y>=0) && (bandera2==1)){ 
                  _root.lienzo.lineStyle(2,0x009900,100); 
                  _root.lienzo.lineTo(x,y); 
                  y=y-30; 
            }
}


Solo utilice dos banderas (switches) como quieras llamarlo, para que respetara los if de "x" y "y". :lol:

Ah el tercer if de x>=30 es porque se me pasaba y seguia a -30, con eso asegure que llegara hasta 0 :wink: .

"y" no me daba el mismo error. ^^

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

msie
Citar            
MensajeEscrito el 06 Jun 2005 06:24 am
Maikel, tu función esta bien, tal vez con unas ligeras modificaciones, para hacerla mas portable, puedes reutilizarla de forma sencilla, algo como:

Código :

function cuadrado(xIni:Number, yIni:Number, Ancho:Number, Alto:Number, Inc:Number, Color:Number) {
   var Nivel:Number = getNextHighestDepth();
   var Nuevo:MovieClip=createEmptyMovieClip("Cuadrado"+Nivel, Nivel);
   Nuevo.Inc = Inc;
   Nuevo.Ancho = Ancho;
   Nuevo.Alto = Alto;
   Nuevo._x = xIni;
   Nuevo._y = yIni;
   Nuevo.x = 0;
   Nuevo.y = 0;
   Nuevo.lineStyle(2, Color, 100);
   Nuevo.onEnterFrame = function() {
      with (this) {
         if ((x<Ancho) && (y == 0)) {
            x = x+Inc;
         } else if ((y<Alto) && (x>=Ancho)) {
            y = y+Inc;
         } else if ((x>0) && (y == Alto)) {
            x = x-Inc;
         } else if ((y>0)) {
            y = y-Inc;
         } else {
            delete onEnterFrame;
         }
         lineTo(x, y);
      }
   };
}
cuadrado(40, 40, 160, 160, 20,0x009900);
cuadrado(-60, -60, 100, 100, 20,0xFF6600);
cuadrado(140, 140, 160, 160, 20,0x000088);
cuadrado(340, 100, 160, 160, 20,0x9ABFC5);


:wink:

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 06 Jun 2005 02:21 pm
Si javierdaniel es cierto como dije "No es la mejor manera", pero en realidad modifique el codigo a las 2:30am de mi hora local zzz: , y como tu lo hiciste es portable cierto, siempre es mejor trabajar con funciones (con sus respectivos parametros) para de alguna manera reutilizar el codigo.

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

msie
Citar            
MensajeEscrito el 06 Jun 2005 09:42 pm
maikel: muchas gracias por tu ayuda sali del limbo y logre hacer el cuadrado que necesitaba

se te agradece enormemente.

javierdaniel:
tu funcion esta genial muchas gracias aun me falta mucho por aprender para tener esa logica .

gracias

Por jopoipo

19 de clabLevel



Genero:Masculino  

chile

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.