Buenas, por fin me he decidido a empezar un juego o proyecto de ello para aprender a usar el Game Maker.
Estoy haciendo uno isometrico y para la movilidad del personaje he usado este codigo:
/// profundidad del objeto
depth = -y;
////mover abajo
if (keyboard_check(vk_down)) && (place_free(x+4,y+2))
{
x += 4;
y += 2;
sprite_index = spr_abajo
image_speed = 0.1;
}
//mover arriba
if (keyboard_check(vk_up)) && (place_free(x-4,y-2))
{
x -= 4;
y -= 2;
sprite_index = spr_arriba
image_speed = 0.1;
}
//mover izquierda
if (keyboard_check(vk_left)) && (place_free(x-4,y+2))
{
x -= 4;
y += 2;
sprite_index = spr_izquierda
image_speed = 0.1;
}
//mover derecha
if (keyboard_check(vk_right)) && (place_free(x+4,y-2))
{
x += 4;
y -= 2;
sprite_index = spr_derecha
image_speed = 0.1;
}
pero el sprite siempre se mueve a la misma velocidad, varie el numero a otro valor, y lo que varia es la rapidez de transicion de los tres sprites de movimiento hacia cada lado, osea, por si alguno no me entiende, varia la velocidad con la que mueve los brazos, y no la de desplazamiento del jugador.
se que sera una cosa simple, pero no la encuentro,
muchas gracias a todos
con que función estas cambiando la velocidad??
en el obj_player ---evento Steep ------ execute code
PD: acabo de modificar en la room donde alojo el obj_player, settings------speed y le afecta a la velocidad del obj_player, pero no lo entiendo entonces
si pero que acción usas para modificar esa velocidad??Por cierto pon el icono de la versión que usas si no quieres que te llamen la atención....
La velocidad para bajar tu personaje. La estas indicando en el eje de la y.
En el ejemplo que pones esta a 2. Si quieres cambiar la velocidad, tienes que cambiar ese valor. No el del room. Al cambiar la velocidad de room cambiaras la velocidad de todo.
Espero haberte ayudado.
Cita de: 4mstr4d en Abril 20, 2016, 04:15:09 PM
Buenas, por fin me he decidido a empezar un juego o proyecto de ello para aprender a usar el Game Maker.
Estoy haciendo uno isometrico y para la movilidad del personaje he usado este codigo:
/// profundidad del objeto
depth = -y;
////mover abajo
if (keyboard_check(vk_down)) && (place_free(x+4,y+2))
{
x += 4;
y += 2;
sprite_index = spr_abajo
image_speed = 0.1;
}
//mover arriba
if (keyboard_check(vk_up)) && (place_free(x-4,y-2))
{
x -= 4;
y -= 2;
sprite_index = spr_arriba
image_speed = 0.1;
}
//mover izquierda
if (keyboard_check(vk_left)) && (place_free(x-4,y+2))
{
x -= 4;
y += 2;
sprite_index = spr_izquierda
image_speed = 0.1;
}
//mover derecha
if (keyboard_check(vk_right)) && (place_free(x+4,y-2))
{
x += 4;
y -= 2;
sprite_index = spr_derecha
image_speed = 0.1;
}
pero el sprite siempre se mueve a la misma velocidad, varie el numero a otro valor, y lo que varia es la rapidez de transicion de los tres sprites de movimiento hacia cada lado, osea, por si alguno no me entiende, varia la velocidad con la que mueve los brazos, y no la de desplazamiento del jugador.
se que sera una cosa simple, pero no la encuentro,
muchas gracias a todos