hola, estoy haciendo un juego de tanques. No puedo hacer que el tanque rival gire su torreta de forma natural con mi actual codigo solo se dirige al objetivo cuando dentra a cierta distancia no gira hasta llegar a el objetivo y se ve poco real.
este es el codigo que tengo he intentado de diferentes formas pero no se mucho de esto al parecer. :-X
var ex, ey;
ex = instance_nearest(x, y, objPlayer).x;
ey = instance_nearest(x, y, objPlayer).y;
if point_distance(x, y, ex, ey) < 200
{
cannonRot1 = point_direction(x, y, ex, ey)
{
{
if distance_to_object(objPlayer) < 150
{if (esperaDisparo == 0){
dispara = instance_create(x,y, object_bala)
dispara.image_angle = cannonRot1
esperaDisparo = 50; //Aqui pones lo que quieres que se demore cada disparo
}else{
esperaDisparo -= 1; //Reducimos el contador de espera
}
}
}
}
}
Lo que pasa es que dispara.image_angle = cannonRot1 está dentro del if que revisa si se está cerca del jugador. Ese código para girar la torreta debe ir fuera de los if para que el tanque rote la torreta constantemente, no sólo cuando esté cerca del objetivo