Noticias

¡Ayuda a la Comunidad GM, haz una donación!

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: (solucionado)Que al moverse en una direccion, no se mueva en la direccion contra  (Leído 1362 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado 006 Time

Hola makeros... tengo una duda... estoy haciendo un juego en el cual te mueves en 4 direcciones... lo que necesito saber es como hacer para que cuando se este moviendo hacia arriba no pueda bajar (que la tecla "abajo" no responda), que cuando este moviendose hacia la derecha no pueda ir a la izquierda... tal vez hayan ejemplos de esto... pero no se me ocurre con que nombre buscarlos...
De antemano muchas gracia y que tengan un buen dia...
« última modificación: Junio 22, 2011, 02:48:01 am por 006 Time »

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado slampdesign

  • Adicto
  • *
  • Puntos: 3
  • Mensajes: 495
  • Sexo: Masculino
    • Ver Perfil
Bueno, algo muy facil seria probar que no se este presionando dicha tecla como p.ej:

if !keyboard_check(vk_down)
{y-=1}

o tambien probando las direcciones:

if ! direction=270
{direction=90}

 


Desconectado licshendu

  • Habitual
  • *
  • Puntos: 46
  • Mensajes: 64
  • Sexo: Masculino
  • Sooel de Aries
    • Ver Perfil
usa else if, asi los haces mutuamente excluyentes

if(keyboard_check(vk_up))
//codigo para moverse a la derecha
else if(keyboard_check(vk_down))
//codigo para moverse a la izquierda

if(keyboard_check(vk_left))
//codigo para moverse a la izquierda
else if(keyboard_check(vk_right))
//codigo para moverse a la derecha


saludos  ;D

"Si he llegado a ver más lejos que otros, es porque me subí a hombros de gigantes"  Isaac Newton
 


elviskelley

  • Visitante
ok entiendo lo que pides, pero debe haber un momento en el que puedas cambiar de direccion. asi que lo colocare en una alarm y tu decides cuando usarlo.

preferi no pegar codigo te dejo el ejemplo adjunto.

 


Desconectado 006 Time

Emmm... emmm... emmm... slampdesign, no entendi donde y cuando debo poner ese codigo (ignorancia mia...)...
licshendu, por mas que intento poner el codigo... no me resulta... o tal vez me falta algo (tambien ignorancia mia...)
elviskelley, emmm... no se si tal vez me explique mal, pero lo que intento hacer es un movimiento tipo Snake (el juego de la serpiente), pero igual gracias...
Gracias por responder, y que tengan un buen dia...

 


Desconectado Ge

  • Asiduo
  • *
  • Puntos: 0
  • Mensajes: 199
  • Sexo: Masculino
    • Ver Perfil
si queres hacer un snake, esto puede servirte  :-[
ponelo en un objeto cualquiera, y tendria que hacer el movimiento de forma tan que no pueda volver sobre si misma.

evento step:
speed = 5;

if(keyboard_check(vk_left) = true) and (direction != 0)
{
direction = 180;
}

if(keyboard_check(vk_right) = true) and (direction != 180)
{
direction = 0;
}

if(keyboard_check(vk_up) = true) and (direction != 270)
{
direction = 90;
}

if(keyboard_check(vk_down) = true) and (direction != 90)
{
direction = 270;
}

 


elviskelley

  • Visitante
no lo sabia, bueno ya ge te dio la respuesta.
:-C, jejeje
« última modificación: Junio 21, 2011, 10:24:03 pm por elviskelley »

 


Desconectado 006 Time

Oh... Gracias Ge... eso era justamente lo que necesitaba... +1 por la ayuda... elviskelley, no te preocupes... solo fui yo, que no me explique bien... muchas gracias por responder, doy por solucionada la pregunta... que tengan un buen dia...