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

MouseEvent, ayuda, no consigo repeler con el mouse, un clip de película

Estas en el tema de MouseEvent, ayuda, no consigo repeler con el mouse, un clip de película en el foro de Flash y Actionscript en Foros del Web. Hola, ¿Alguien sabe que debo cambiar en este código para que el clip de película cuadro, en vez de seguir al raton , se vaya ...
  #1 (permalink)  
Antiguo 12/02/2010, 15:28
Avatar de Polu  
Fecha de Ingreso: febrero-2003
Mensajes: 135
Antigüedad: 21 años, 2 meses
Puntos: 0
MouseEvent, ayuda, no consigo repeler con el mouse, un clip de película

Hola,

¿Alguien sabe que debo cambiar en este código para que el clip de película cuadro, en vez de seguir al raton , se vaya al contrario?, osea:

Si desplazo el ratón a la derecha, el clip de película se me vaya a la izquierda,
y si desplazo el ratón a la izquierda, se me vaya el clip de película a la derecha.

Aquí os dejo el código as3:

Saludos,

//---------------------------------------------------------------------------------

area.addEventListener(MouseEvent.MOUSE_OVER, seguir);


function seguir(event:MouseEvent):void{
this.addEventListener(Event.ENTER_FRAME, ejecutar);

}

function ejecutar (event:Event):void{

cuadro.x += (mouseX - cuadro.x) * 0.01;

}
  #2 (permalink)  
Antiguo 12/02/2010, 15:37
 
Fecha de Ingreso: marzo-2007
Mensajes: 23
Antigüedad: 17 años, 1 mes
Puntos: 3
Respuesta: MouseEvent, ayuda, no consigo repeler con el mouse, un clip de película

Prueba en vez de poner mouseX pon -mouseX
  #3 (permalink)  
Antiguo 12/02/2010, 16:40
Avatar de Polu  
Fecha de Ingreso: febrero-2003
Mensajes: 135
Antigüedad: 21 años, 2 meses
Puntos: 0
Respuesta: MouseEvent, ayuda, no consigo repeler con el mouse, un clip de película

Hola Javieration,

Ante todo, gracias por contestar. He probado a poner el signo - delante de mouseX, así:

cuadro.x += -(mouseX - cuadro.x) * 0.01;

Ahora si consigo lo que quería pero el mc se me pierde fuera de la pantalla alejándose cada vez más rápido.

¿Hay alguna forma de evitar que el mc se pierda ?

Gracias..
  #4 (permalink)  
Antiguo 12/02/2010, 17:20
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Respuesta: MouseEvent, ayuda, no consigo repeler con el mouse, un clip de película

porque no le das una posicion inicial a tu clip emulador de mouse y remueves el Listener una vez que haya salido del area de tu interes? Es decir, creas un background denominado area, o dibujas mediante script un contenedor denominado area, o algo asi.

Código actionscript:
Ver original
  1. area.addEventListener(MouseEvent.MOUSE_OUT, omitir);
  2.  
  3. function omitir(event:MouseEvent):void{
  4.  
  5. this.removeEventListener(Event.ENTER_FRAME, ejecutar);
  6.  
  7. cuadro.x=stage.stageWidth/2 - 60;
  8.  
  9. cuadro.y=60;
  10.  
  11. }

esto hara que cuando salga del clip area, automaticamente vuelva al centro del stage

la verdad, no le encuentro el chiste a ponerle += -, pero si funciona, bueno

ademas te falto indicarle la posicion Y del cuadro con respecto al mouse, y puedes ocultar el mouse a la vez

Cita:
function ejecutar (event:Event):void{

cuadro.x += (mouseX - cuadro.x) * 0.01;

cuadro.y += (mouseY - cuadro.x) * 0.01;

Mouse.hide();

}
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #5 (permalink)  
Antiguo 13/02/2010, 06:49
Avatar de Polu  
Fecha de Ingreso: febrero-2003
Mensajes: 135
Antigüedad: 21 años, 2 meses
Puntos: 0
De acuerdo Respuesta: MouseEvent, ayuda, no consigo repeler con el mouse, un clip de película

Hola loncho_rojas,
He probado tu script pero no va. He captado por ahí una forma de hacerlo y me va ferfecto. Lo he pillado de "cyclospace",

http://kodamabcn.wordpress.com/2009/...umido-con-as3/


Está retocado por que, en realidad este escrypt es de "Sargento".

http://www.sargentoweb.com/as3/?doc=15


Este es el scrypt por si a alguien le interesa, lo he probado y va muy bien:

//-----------------------------------------------------------------------------------

Código Javascript:
Ver original
  1. var cuadro:MovieClip;
  2.  
  3. cuadro.origenX=cuadro.x;
  4.  
  5. cuadro.profundidad=100;
  6.  
  7.  
  8.  
  9. var arrObjetos:Array=new Array(cuadro);
  10. arrObjetos.sortOn( 'profundidad', Array.NUMERIC );
  11. for (var i:int = 0; i < arrObjetos.length; i++) {
  12. arrObjetos[i].addEventListener(Event.ENTER_FRAME,fmover);
  13. addChild(arrObjetos [ i ] );
  14. }
  15.  
  16.  
  17. var ratonX:Number;
  18. var destX:Number;
  19.  
  20. function fmover(event:Event):void {
  21.  
  22.  
  23. ratonX = ((stage.stageWidth / 1) - stage.mouseX) / (stage.stageWidth / 1);
  24. destX= event.target.origenX + (ratonX * event.target.profundidad);
  25.  
  26.  
  27. event.target.x += (destX - event.target.x)/8;
  28.  
  29. }

Última edición por Polu; 13/02/2010 a las 06:55

Etiquetas: mouse, clips
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 18:01.