hola como muevo en las direcciones en angulo
si estoy llendo hacia abajo y giro hacia la derecha que se valla hacia la derecha pero volteando poco por poco con angulo
aca mi codigo pero no me sale
dir1 = almacedo el angulo donde estaba
dir2 = almacena el angulo donde girara
[gml] if(iniciar=true)
{
if(dir1=90 and dir2=180)
{
if ir<=90
ir=90;
if (ir<180)
ir+=angulogiro;
motion_set(ir,velocidad);
}
if(dir1=90 and dir2=0)
{
if ir>=90
ir=90;
if (ir>0)
ir-=angulogiro;
motion_set(ir,velocidad);
}
if(dir1=270 and dir2=180)
{
if ir>=270
ir=270;
if (ir>180)
ir-=angulogiro;
motion_set(ir,velocidad);
}
if(dir1=270 and dir2=0)
{
if ir<=270
ir=270;
if (ir<360 and ir>260)
ir+=angulogiro;
if ir=360;
ir=0;
motion_set(ir,velocidad);
}
//-------------------------------------
if(dir1=0 and dir2=90)
{
if ir<=0
ir=0;
if (ir<90)
ir+=angulogiro;
motion_set(ir,velocidad);
}
if(dir1=0 and dir2=270)
{
if ir>360
ir=360;
if (ir>270)
ir-=angulogiro;
motion_set(ir,velocidad);
}
if(dir1=180 and dir2=90)
{
if ir>180
ir=180;
if (ir>90)
ir-=angulogiro;
motion_set(ir,velocidad);
}
if(dir1=180 and dir2=270)
{
if ir<180
ir=180;
if (ir<270)
ir+=angulogiro;
motion_set(ir,velocidad);
}
} [/gml]
//para la direccion usalo en el event de teclas.
direction= (0=derecha, 90=arriba, 180=izquierda, 270=abajo)
//para que voltee el angulo.
if imagen_angle <direction
{image_angle+=5;}
if image_angle > direction
{image_angle-=5;}
No le? tu c?digo (mucho) pero igual dices que no funciona, as? que har? uno nuevo (que ya prob?):
[gml]
//EVENTO STEP
if (keyboard_check_pressed(vk_left)){
dirtogo = 180;
}
if (keyboard_check_pressed(vk_up)){
dirtogo = 90;
}
if (keyboard_check_pressed(vk_right)){
if (dirtogo == 270){ dirtogo = 360; exit; } //Cuando va de 270 a 0
dirtogo = 0;
}
if (keyboard_check_pressed(vk_down)){
if (direction == 0){ direction = 356; } //Esto para cuando va de 0 a 270
dirtogo = 270;
}
[/gml]
[gml]
//EVENTO STEP
/*Variables:
dirtogo = direction; //Direcci?n a la que va a girar
*/
if (dirtogo < direction){ direction -= 4; } //4 es la velocidad de giro
if (dirtogo > direction){ direction += 4; }
if (abs(direction-dirtogo)<=4){ //cuando este cerca, se detiene
direction = dirtogo;
if (dirtogo = 360){ dirtogo = 0; } //Caso especial cuando va de 270 a 0
}
[/gml]
Y por ultimo si quieres
[gml]
//EVENTO STEP
image_angle = direction;
[/gml]
Cualquier cosa avisas.
Saludos.
ME PUEDEN HACER UN EJEMPLITO PORFA =)
Ah? tienes... copy paste de lo que te copie arriba, esta en :GM8:
Saludos :) .
gracias me sirvio justo lo que queria
Tambi?n pueden usar este c?digo (que esta en los smart codes de yoyo).
[gml]image_angle=(image_angle+(sin(degtorad(
direction-image_angle))*12));
//cambia el 12 por la velocidad deseada[/gml]
y bueno, ya despues lo puedes usar como dijo Jucarave.
[gml]if (keyboard_check(vk_left)){
direction=180;
}
if (keyboard_check(vk_right)){
direction=180;
}
if (keyboard_check(vk_up)){
direction=90;
}
if (keyboard_check(vk_down)){
direction=270;
}
[/gml]
Listo, solo pondr?as el c?digo este en end step y quedar?a perfecto :).
[gml]image_angle=(image_angle+(sin(degtorad(
direction-image_angle))*12));[/gml]