Voy a hacer un juego y lo que quiero hacer es esto:
Cuando el objeto player (es un cubo 32x32) toque con la pared horizontalmente (si va a la pared va en una velocidad mayor) cuando toque el objeto wall horizontalmente no vertical tiene que revertir la velocidad pero que sea menor, y que cuando este en su posicion inicial con la coordenada X la variable con la que se mueve a los lados es true y que pare de moverse, y así hace para esquivar, el problema es que no se como hacer ya que yo tengo una variable en el create llamada previousx que tiene el valor de la coordenada X inicial ya que ahi es edonde tiene que estar, el problema es que si pongo
obviamente a lo que empieze no se va a poder mover y no se como hacer, este es el codigo:
Cuando el objeto player (es un cubo 32x32) toque con la pared horizontalmente (si va a la pared va en una velocidad mayor) cuando toque el objeto wall horizontalmente no vertical tiene que revertir la velocidad pero que sea menor, y que cuando este en su posicion inicial con la coordenada X la variable con la que se mueve a los lados es true y que pare de moverse, y así hace para esquivar, el problema es que no se como hacer ya que yo tengo una variable en el create llamada previousx que tiene el valor de la coordenada X inicial ya que ahi es edonde tiene que estar, el problema es que si pongo
Código [Seleccionar]
if(x == previousx){hspeed = 0;}
obviamente a lo que empieze no se va a poder mover y no se como hacer, este es el codigo:
Código [Seleccionar]
if(keyboard_check_pressed(vk_right))
{
hspeed = spd
}
if(keyboard_check_pressed(vk_left))
{
hspeed = -spd
}
if(place_meeting(x-4,y,obj_wall))
{
hspeed = returnspd;
}
if(place_meeting(x+4,y,obj_wall))
{
hspeed = -returnspd;
}