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

mover con teclado, pero con límites.

Estas en el tema de mover con teclado, pero con límites. en el foro de Flash y Actionscript en Foros del Web. Hola a todos: La verdad es que no se como resolver un problema. Estoy haciendo un objeto que se pueda mover con las flechas del ...
  #1 (permalink)  
Antiguo 23/01/2002, 13:29
 
Fecha de Ingreso: junio-2001
Mensajes: 8
Antigüedad: 22 años, 10 meses
Puntos: 0
mover con teclado, pero con límites.

Hola a todos:

La verdad es que no se como resolver un problema. Estoy haciendo un objeto que se pueda mover con las flechas del teclado. Para seo, hice un movie clip cuya instancia llame "you", e hice un boton al cual le di la sigiente acción:

on (keyPress "<Right>") {
setProperty ("you", _x, (getProperty(you, _x))+5);
}
on (keyPress "<Left>") {
setProperty ("you", _x, (getProperty(you, _x))-5);
}
on (keyPress "<Up>") {
setProperty ("you", _y, (getProperty(you, _y))-5);
}
on (keyPress "<Down>") {
setProperty ("you", _y, (getProperty(you, _y))+5);
}


El problema está en que al moverlo con el teclado, llega un minuto en que este puede desaparecer de los margenes de la pantalla. Por lo tanto lo que quiero hacer ahora es indicarle límites de movimiento, pero no se como hacerlo.

Si alguien tiene una vaga idea de como puedo comenzar a hacerlo, se lo agradezco, la verdad estoy medio perdida.


Saludos a todos.
  #2 (permalink)  
Antiguo 23/01/2002, 14:16
dasaev
Invitado
 
Mensajes: n/a
Puntos:
Re: mover con teclado, pero con límites.

Mhhh, Analizando tu problema, lo que pasa es que a un boton cuando le das una sola vez la tecla, se sigue toodo sin detenerse, hay acciones que son para moviesClips, que las encuentras en las acciones de Objetos, no me acuerdo muy bièn como son pero lo intentarè, es algo asì:
onClipEvent(enterFrame){
if(KeyisDown(KEYUP))
this._y=this._y+5;}
No son eventos para botones, son para moviesclips, chècalos en las acciones para objects, y juega con ellos, ahora para que se detengan puedes hacerlo con las acciones hittest, busca algo relacionado, y si no lo encuentras te mando un manual de ActionScript para que te lo leas y luego juegues :)
  #3 (permalink)  
Antiguo 23/01/2002, 15:17
 
Fecha de Ingreso: junio-2001
Mensajes: 8
Antigüedad: 22 años, 10 meses
Puntos: 0
Re: mover con teclado, pero con límites.

Hola Dasaev:

Probé cambiar la acción a una para movie clip. En este caso hice un movie clip que llamé pelota y al primer frame de mi pelicula le puse la acción:

if (Key.isDown(key.up)) {
setProperty ("pelota", _y, pelota._y-10);
}
if (Key.isDown(key.down)) {
setProperty ("pelota", _y, pelota._y+10);
}
if (Key.isDown(key.left)) {
setProperty ("pelota", _x, pelota._x-10);
}
if (Key.isDown(key.right)) {
setProperty ("pelota", _x, pelota._x+10);
}


Esto me funciona igual que la película anterior, se mueve con el teclado, pero no se como hacer para que tenga límites de movimiento.

¿Se te ocurre algo?, la verdad es que yo estoy aprendiendo a través de ejemplos que voy viendo y probando, pero he buscado alguno que ponga límites con SetProperty, pero solo he encontrado que con StartDrag se puede ingresar en el cuadro de diálogo de la acción una selección límite de hasta donde se puede mover el MC, pero esto es para moverlo con el mouse, no con el teclado.

De todas formas gracias.
  #4 (permalink)  
Antiguo 25/01/2002, 11:48
dasaev
Invitado
 
Mensajes: n/a
Puntos:
Re: mover con teclado, pero con límites.

mira, que te parece si te envío un ejemplo a tu correo, pero me voy a tardar un poco, te lo envío mañana sabado, ok?
  #5 (permalink)  
Antiguo 25/01/2002, 12:07
 
Fecha de Ingreso: julio-2001
Ubicación: Barcelona
Mensajes: 922
Antigüedad: 22 años, 9 meses
Puntos: 1
Re: mover con teclado, pero con límites.

HOla, por que no te miras este tutorial, en el apartado de practicas hay una explicacion, quiza te ayude:

<a href='ir.asp?http://www.isencia.com/test/tutorial.html' target='_blank'>http://www.isencia.com/test/tutorial.htm...</a>

Ya me diras algo
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 19:15.