Página 1 de 1

Como fazer o inimigo mover-se(ser empurrado) para trás ao ser atingido?

Enviado: Sex Set 16, 2016 6:26 pm
por Higor Melo
Galera, como faço o inimigo ser empurrado para trás ao ser atingido?

Re: Como fazer o inimigo mover-se(ser empurrado) para trás ao ser atingido?  Tópico resolvido

Enviado: Sex Set 16, 2016 7:48 pm
por Superbomber
Já que ninguém respondei vou fazer isso. :u:

Código: Selecionar todos

// Ao ser atingido
var dir, xx, yy;
dir = point_direction(player.x, player.y, x, y);
repeat(5){
  xx = x + lengthdir_x(1, dir);
  yy = y + lengthdir_y(1, dir);
  if(place_free(xx, yy)){
    x = xx;
    y = yy;
  }
}
O 5 no repeat substitua pelo valor que desejar que o inimigo se mova.
No caso ta verificando se não tem nenhum objeto sólido antes de se mover, pra evitar entrar dentro de uma parede, por exemplo.

Re: Como fazer o inimigo mover-se(ser empurrado) para trás ao ser atingido?

Enviado: Sex Set 16, 2016 7:55 pm
por Higor Melo
Superbomber escreveu:Já que ninguém respondei vou fazer isso. :u:

Código: Selecionar todos

// Ao ser atingido
var dir, xx, yy;
dir = point_direction(player.x, player.y, x, y);
repeat(5){
  xx = x + lengthdir_x(1, dir);
  yy = y + lengthdir_y(1, dir);
  if(place_free(xx, yy)){
    x = xx;
    y = yy;
  }
}
O 5 no repeat substitua pelo valor que desejar que o inimigo se mova.
No caso ta verificando se não tem nenhum objeto sólido antes de se mover, pra evitar entrar dentro de uma parede, por exemplo.
Valeu amigo!