Como hacer un detector de personajes en una dirección concreta

Publicado por ElKopiraih, Febrero 05, 2021, 10:48:09 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

ElKopiraih

Buenas!
En mi juego tengo un enemigo el cual si te pones en una dirección en concreto (por ejemplo, debajo suya) quiero que vaya hacia abajo (o en la dirección en la que esté el personaje), pero no se como hacerlo sin crear otro objeto, cosa que no quiero hacer. ¿Cómo podría hacer esto?

T789

Saludos ElKopiraih

Te sugiero que uses la funcion "point_direction"
[gml]
var range, dirPlayer, colPlayer;
range = 128;
dirPlayer = point_direction(x, y, obj_player.x, obj_player.y);

if collision_line(x, y, x+lengthdir_x(range, dirPlayer), y+lengthdir_y(range, dirPlayer), obj_player, 0, 1)
  // Si esta en una direccion por debajo del
  if (dirPlayer > 225 && dirPlayer < 315) {
    direction = dirPlayer;
    speed = 4;
  }
[/gml]

ElKopiraih

Cita de: T789 en Febrero 05, 2021, 02:41:25 PM
Saludos ElKopiraih

Te sugiero que uses la funcion "point_direction"
[gml]
var range, dirPlayer, colPlayer;
range = 128;
dirPlayer = point_direction(x, y, obj_player.x, obj_player.y);

if collision_line(x, y, x+lengthdir_x(range, dirPlayer), y+lengthdir_y(range, dirPlayer), obj_player, 0, 1)
  // Si esta en una direccion por debajo del
  if (dirPlayer > 225 && dirPlayer < 315) {
    direction = dirPlayer;
    speed = 4;
  }
[/gml]

Haciendo unos cambios al código al final me ha servido, muchas gracias!

155 Visitantes, 0 Usuarios