Bueni mi pregunta es como mi personaje puede caminar diagonalmente, yo ya tengo los sprites de cuando camina en todas sus direcciones.
Salu2
no se si estes usando las variables speed y direction, pero estas variables representan la velocidad(speed) y direccion (direction) de una instancia.
speed = 1 significa que la instancia se mueve 1 pixel en la direccion que indique su variable direction
direction = 0 significa direccion a la derecha
direction = 90 significa direccion a arriba
direction = 180 significa direccion a la izquierda
direction = 270 significa direccion a abajo
si quieres que se mueva en direccion diagonal solo pon direction 45 o 135 o 225 o 315
o puedes poner vspeed=5; hspeed=5
asi caminaria diagonalmente
o
x+=5;y+=5
saludos
Realmente no entendi nada de lo que escribieron XD.
En 2D nos basamos en dos ejes, el X y el Y, para movernos horizontalmente usamos el eje X, un movimiento hacia la izquierda supondria restarnos algunos pixeles en nuestro eje X, por ejemplo si queremos avanzar 5 pixeles (la tipica distancia en casi todos los juegos para un movimiento normal de cada step) hacemos uso del codigo x-=5; en cambio si es para la derecha x+=5
Con el eje Y restamos para ir hacia arriba y sumamos para ir hacia abajo, de ahi a que si queremos un movimiento diagonal (imaginemos para la direccion 45?) deberiamos hacer x+=5;y-=5; ;)
CitarRealmente no entendi nada de lo que escribieron
deverias espesificar como haces para mover el personaje, asi seria mas fasil responder.
osea que funciones usas ya sea GML o D&D.
prueva poner en el evento step una "pieza de codigo" que diga lo que escribio deathmetal:
x+=5;
y+=5;
hara que se mueva en diagonal asia abajo a la derecha
si no entendiste nada es porque no usas gml...
supongo yo, si es el caso, deberias haberlo dicho, solo pon tu cuadrito con las flechas rojas y marca la casilla en diagonal, en cambio, si usas gml.. sabras que hacer con los codigos proporcionados anteriormente
;)
No men, ya no utilizo tanto eso, me parece que llena mucho, yo utilize lo que dijiste:
Solo que me toco a?adir mas:
//Movimientos Diagonales
//Diagonal Inferior Derecha
if keyboard_check(vk_right) and keyboard_check(vk_down)
{
vspeed=4; hspeed=4
}
//Diagonal Inferior Izquierda
if keyboard_check(vk_left) and keyboard_check(vk_down)
{
vspeed=4; hspeed=-4
}
//Diagonal Superior Derecha
if keyboard_check(vk_right) and keyboard_check(vk_up)
{
vspeed=-4; hspeed=4
}
//Diagonal Superior Izquierda
if keyboard_check(vk_left) and keyboard_check(vk_up)
{
vspeed=-4; hspeed=-4
}
Aunque tu escribiste con 5 yo le cambie a 4, por que la velocidad normal de mi personaje es 4.
Ya no soy tan novato XD.
Aunque como no llevo tanto tiempo no se que significa eso de GML y D&D o lo que sea. XD
Si quieren me pueden decir que significa eso.