Cita de: Marth en Diciembre 16, 2014, 10:36:34 PM
Pues básicamente pon un evento en la caja para cuando tu personaje choque con esta.
x+=hspeed
y+=vspeed
No me funciona el código. :(
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Cita de: Marth en Diciembre 16, 2014, 10:36:34 PM
Pues básicamente pon un evento en la caja para cuando tu personaje choque con esta.
x+=hspeed
y+=vspeed
Cita de: eams1986 en Diciembre 15, 2014, 09:52:39 PM
si amigo
if distance_to_object (obj_player) <200 and distance_to_object(obj_player) >32 //32 es la distancia que quieres
{
move_towards_point(obj_player.x, obj_player.y, 5);
}
else
speed = 0;
Hay esta
Cita de: eams1986 en Diciembre 15, 2014, 09:33:59 PM
en step de el que persigue.
if distance_to_object (obj_player) <200 // 200 pixeles esta es la distancia de que tu quieres.
{
move_towards_point(obj_player.x, obj_player.y, 5);
}
//else
//speed = 0;
Saludos!!
Cita de: eldimarzioxp en Diciembre 11, 2014, 10:22:37 PM
colision = place_meeting(x,y+1,o_escalera);
if place_meeting(x,y+1,o_escalera) and keyboard_key_press(vk_up)
{
colision = true;
grav = 0;
vsp=0;
}
if colision = false
{
grav = 0.7
}
Prueba este codigo, si no te funciona ya no se me ocurre nada
Cita de: eldimarzioxp en Diciembre 11, 2014, 09:29:20 PM
¿Por que no haces que cuando colisione con la escalera y presione la tecla UP al objeto escalera se le quite la propiedad de solido?
if place_meeting(x,y+1,o_escalera) and keyboard_key_press(vk_up)
{
grav = 0;
vsp=0;
}
else
{
grav = 0.7;
}
Cita de: carlymx en Diciembre 10, 2014, 11:27:34 PM
Hola buenas.
No soy ningún experto pero quizás te sirva subirle al personaje la 'Densidad' del objeto en las opciones de la física, lo comento porque a mi me paso, era demasiado alta y mi personaje se agarraba a las paredes.
yo seguí este tutorial, quizás te sirva.
https://www.youtube.com/watch?v=xIsQux0FD44
///Initialize Variables
grav = 0.7;
hsp = 0;
hsp_carry = 0;
vsp = 0;
movespeed = 6;
wspeed=0
jumpspeed_normal = 15;
//jumpspeed_powerup = 10;
jumpspeed = jumpspeed_normal
key_down = 0;
//Get the player's input
key_right = keyboard_check(vk_right)
key_left = -keyboard_check(vk_left);
key_jump = keyboard_check(vk_space);
key_down = keyboard_check(vk_down);
//React to inputs
move = key_left + key_right;
hsp = move * movespeed;
if (vsp < 10) vsp += grav;
if (place_meeting(x,y+1,obj_wall))
{
if (key_jump) vsp = -jumpspeed;
}
var hsp_final = hsp + hsp_carry;
hsp_carry = 0;
//Horizontal Collision
if (place_meeting(x+hsp_final,y,obj_wall))
{
while(!place_meeting(x+sign(hsp_final),y,obj_wall))
{
x += sign(hsp_final);
}
hsp_final = 0;
hsp = 0;
}
x += hsp_final;
//Vertical Collision
if (place_meeting(x,y+vsp,obj_wall))
{
while(!place_meeting(x,y+sign(vsp),obj_wall))
{
y += sign(vsp);
}
vsp = 0;
}
y += vsp;
Page generada en 0.041 segundos con 12 consultas.