Foros del Web » Creando para Internet » Flash y Actionscript »

THIS en AS3

Estas en el tema de THIS en AS3 en el foro de Flash y Actionscript en Foros del Web. Hola, como puedo trabjar con los THIs en AS3? tengo esto: Código: piedra.addEventListener(MouseEvent.MOUSE_DOWN, agarrar); function agarrar(event:MouseEvent):void { trace(puntero.x); } hasta ahi me sale bien... pero ...
  #1 (permalink)  
Antiguo 28/03/2012, 23:07
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 3 meses
Puntos: 11
Pregunta THIS en AS3

Hola, como puedo trabjar con los THIs en AS3?

tengo esto:

Código:
piedra.addEventListener(MouseEvent.MOUSE_DOWN, agarrar);


function agarrar(event:MouseEvent):void
{	
  trace(puntero.x);
}
hasta ahi me sale bien... pero quiero que me funcione asi:


Código:
piedra.addEventListener(MouseEvent.MOUSE_DOWN, agarrar);
function agarrar(event:MouseEvent):void
{	
  trace(this.x);
}
ya que voy a crear muchas piedras y cada una va tener posiciones diferentes...

en AS2 era mas facil... creaba un MC y dentro del MC colocaba el codigo en el evento OnRelease() de modo talq ue duplicaba muchas piedras y me devolvia los que queria usando THIS, en AS3 no se como hacerlo.. alguna sugerencia?

gracias
  #2 (permalink)  
Antiguo 29/03/2012, 10:10
 
Fecha de Ingreso: junio-2010
Ubicación: Charlotte, NC
Mensajes: 611
Antigüedad: 13 años, 10 meses
Puntos: 95
Respuesta: THIS en AS3

Te sale error de compilacion?
Es mi primera sospecha, ya que al usar this, te estas refiriendo al metodo, no a la "piedra"

Podrias darnos una vision mas especifica de lo que tratas de hacer, ya que un objeto piedra, y un metodo agarrar se presta a muchas intepretaciones.

Las posiciones de tus piedras van a ser modificadas en tiempo de ejecucion, o siempre van a estar en el mismo lugar?


Te dejo dos tutoriales que quiza puedas ver como accesar a las propiedades de multiples instancias del mismo objeto:

http://alanchavez.com/deteccion-de-c...ased-collision
http://alanchavez.com/tutorial-progr...o-en-flash-as3
  #3 (permalink)  
Antiguo 29/03/2012, 13:33
Avatar de ocesitaro  
Fecha de Ingreso: diciembre-2011
Ubicación: Carabayllo
Mensajes: 274
Antigüedad: 12 años, 5 meses
Puntos: 36
Respuesta: THIS en AS3

piedra.addEventListener(MouseEvent.MOUSE_DOWN, agarrar);
function agarrar(event:MouseEvent):void
{
trace(event.target.x);
}
  #4 (permalink)  
Antiguo 29/03/2012, 22:50
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 3 meses
Puntos: 11
Respuesta: THIS en AS3

event.target.x me funciona bien.. ahora tengo otro lio...

Antes yo creaba un MC y a este mismo le daba caracteristicas como por ejemplo que si le hacen click este cambie de color... eso lo hacia en el mismo objeto onRelease(){gotoAndspop(2);}

entonces en el primer fotograma hacia un FOR 1 al 20 y creaba MC1, MC2, MC3,...,MC20, todos duplicados de MC

bueno al hacer click todos se comportaban como tal, cambiaban de color...

ahora en AS3 no puedo... tengo que crear muchos addEventListener para cada MC.. toooodo un lio...

ideas?
  #5 (permalink)  
Antiguo 29/03/2012, 23:06
Avatar de ocesitaro  
Fecha de Ingreso: diciembre-2011
Ubicación: Carabayllo
Mensajes: 274
Antigüedad: 12 años, 5 meses
Puntos: 36
Respuesta: THIS en AS3

lo que necesitas es crear una clase pro objeto mira te paso un link el cual puedes chekear
es bastante sencillo :
http://www.esedeerre.com/ejemplo/9/9...ipt-30-parte-i
http://www.esedeerre.com/ejemplo/9/9...pt-30-parte-ii

si después de esto tienes alguna otra consulta, no dubes en preguntar en el foro

Etiquetas: as3
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:16.