Inimigo virar a sprite para o lado que ele for

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Inimigo virar a sprite para o lado que ele for

Mensagem por loupa em Sex 07 Maio 2010, 14:56

Olá, tenho um sprite aqui de um inimigo visto de cima e queria saber se tem como ele virar essa sprite conforme ele anda mais sem ficar mudando a sprite, e quando ele passar perto ou o player passar perto dele ele ande mais rapido e vá ná direção do player ai muda a sprite para ele atacar?

Grato Paulo!

loupa

Número de Mensagens : 65
Data de inscrição : 30/03/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Inimigo virar a sprite para o lado que ele for

Mensagem por Igor KinGamer em Sex 07 Maio 2010, 15:37

Pelo que entendi, o sprite é visto de cima e ele pode andar em qualquer direção, certo?

Se for isso, você pode usar image_angle (só funciona no pro!).

A imagem deve ser dele virado para a direita e a origin deve estar centralizada. Então, no step, você coloca:
image_angle = direction;

Claro, para isso funcionar, o movimento dele deve ser feito usando a variável direction.


Para fazer andar mais rápido quando está perto do player e ir na direção dele:

Step:
if (point_distance(x, y, nome_do_objeto_player.x, nome_do_objeto_player.y) > distância_em_pixels)
speed = velocidade_longe_do_player;
else
{
speed = velocidade_perto_do_player;
direction = point_direction(x, y, nome_do_objeto_player.x, nome_do_objeto_player.y);

Igor KinGamer

Número de Mensagens : 890
Idade : 21
Data de inscrição : 26/09/2008
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Inimigo virar a sprite para o lado que ele for

Mensagem por loupa em Sex 07 Maio 2010, 15:51

Se for isso, você pode usar image_angle (só funciona no pro!).

A imagem deve ser dele virado para a direita e a origin deve estar centralizada. Então, no step, você coloca:
image_angle = direction;

Claro, para isso funcionar, o movimento dele deve ser feito usando a variável direction.

Como faço essa parte?

loupa

Número de Mensagens : 65
Data de inscrição : 30/03/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Inimigo virar a sprite para o lado que ele for

Mensagem por Cainã em Sex 07 Maio 2010, 17:05

Agora talvez eu estou entendendo o seu problema. No MSN não entendi direito.

Para usar a variável direction é só colocar ela no Create para o ângulo que quiser, para mudar ele é simples:

CREATE:

Código:
{
change_direction = random(359);
alarm[0] = 60;
}

ALARM 0:

Código:
{
change_direction = random(359);
alarm[0] = 60;
}

STEP:

Código:
{

if point_distance(x,y,player.x,player.y) < 200 {  //Muda para a distância.

speed = 8  //Velocidade perto do player.

direction = point_direction(x,y,player.x,player.y);

}

else{

speed = 5  //Velocidade longe do player.

direction = change_direction;

}

image_angle = direction;

}

OUTSIDE ROOM:

Código:
{

change_direction =- change_direction;

}

Lembre-se de colocar a origem no centro e o sprite do inimigo virado para esquerda.

Cainã

Número de Mensagens : 1335
Idade : 22
Data de inscrição : 07/03/2010
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://cai.na.tl/

Voltar ao Topo Ir em baixo

Re: Inimigo virar a sprite para o lado que ele for

Mensagem por loupa em Sex 07 Maio 2010, 17:34

VLW funcionou obrigado ao dois!!!

loupa

Número de Mensagens : 65
Data de inscrição : 30/03/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Inimigo virar a sprite para o lado que ele for

Mensagem por Conteúdo patrocinado Hoje à(s) 21:59


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum