Comunidad de diseño web y desarrollo en internet online

Cargar objetos de libreria

Citar            
MensajeEscrito el 07 Mar 2011 05:37 pm
Que tal Claberos.

Necesito hacer una matriz de movie clips de círculos, 34 x 23 ya los cargue sin problema pero quiero que al pasar el cursor por cada uno de ellos se anime. Son alrededor de 728 bolitas y lo hice a la antigua uno por uno pero me di cuenta que sería inútil e ineficiente.

Conocen alguna forma de animar a cada uno de forma independiente ya que con lo que hice me anima el último que se creó.

Código ActionScript :

import flash.display.Sprite;
import flash.events.MouseEvent;

stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;

var bolaRoja:Sprite = new Sprite;
addChild(bolaRoja)

   
   for( var j:Number=0;j<23;j++)
      {
            for( var k:Number=0;k<34;k++)
            {
               var agregarBola:bolaR = new bolaR;
               agregarBola.y = agregarBola.height*2/1.3*j;
               agregarBola.x = agregarBola.width*2/1.3*k;
               bolaRoja.addChild(agregarBola);
               agregarBola.stop();
            }

      }

         agregarBola.addEventListener(MouseEvent.MOUSE_OVER, animarClick);
         function animarClick(event:MouseEvent):void
         {
            agregarBola.play();
         }


Saludos buena semana

Por Yair Lara

48 de clabLevel



Genero:Masculino  

Amante del WEB

firefox
Citar            
MensajeEscrito el 07 Mar 2011 06:42 pm
BuenAS:

Coloca la línea:

agregarBola.addEventListener(MouseEvent.MOUSE_OVER, animarClick);

dentro del for:

Código ActionScript :

import flash.display.Sprite; 
import flash.events.MouseEvent; 
 
stage.scaleMode = StageScaleMode.NO_SCALE; 
stage.align = StageAlign.TOP_LEFT; 
 
var bolaRoja:Sprite = new Sprite; 
addChild(bolaRoja) 
 
    
   for( var j:Number=0;j<23;j++) 
      { 
            for( var k:Number=0;k<34;k++) 
            { 
               var agregarBola:bolaR = new bolaR; 
               agregarBola.y = agregarBola.height*2/1.3*j; 
               agregarBola.x = agregarBola.width*2/1.3*k; 
               bolaRoja.addChild(agregarBola); 
               agregarBola.stop();
               agregarBola.addEventListener(MouseEvent.MOUSE_OVER, animarClick);  
            } 
 
      } 
 

function animarClick(event:MouseEvent):void 
{ 
   agregarBola.play(); 
}


Un saludo.

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 07 Mar 2011 07:20 pm
Muchas gracias por responder:

Te comento que ya habia intentado esta forma pero la acción solo se la hace al ultimo movie clip generado por el ciclo. siento que estoy estructurando algo mal ya que al parecer necesitan ser independientes para recivir una función MOUSE_OVER.

Tendre que buscar alguna forma usando arrays.

Se agradece la ayuda, buen dia.

Por Yair Lara

48 de clabLevel



Genero:Masculino  

Amante del WEB

firefox
Citar            
MensajeEscrito el 07 Mar 2011 07:28 pm
perdón, no ví esto:

Código ActionScript :

function animarClick(event:MouseEvent):void  
{  
   MovieClip(event.currentTarget).play();  
} 

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 07 Mar 2011 07:43 pm
Desconocia esa forma muchas gracias.

Espero les sirva a muchos la solución.

Saludos

Por Yair Lara

48 de clabLevel



Genero:Masculino  

Amante del WEB

firefox

 

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