Como eu faço uma AI de tiros em 2D?

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

Como eu faço uma AI de tiros em 2D?

Mensagem por bimorx em Sab 27 Fev 2010, 19:15

Poxa, como eu faço pra tipo, o inimigo anda um certo tempo, para e começa a atirar, eu fiz uma coisa q deu certo porem era apenas 1 disparo e_e'
e como tbm faço pra dar " Head Shots " pra matar o inimigo com 1 só mas com varios inimigos, pois eu fiz assim: criei um objeto chamado " Head " e colokei pra ele ir onde for o obj_inimigo e quando colidir com a bala vai deletar o inimigo e ele junto, mas eu testei com 3 obj_inimigo na room e so ficou 1 " Head " e quando eu disparava nele matava TODOS os obj_inimigo q estavam na room

bimorx

Número de Mensagens : 153
Idade : 21
Data de inscrição : 24/01/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Como eu faço uma AI de tiros em 2D?

Mensagem por vinians em Sab 27 Fev 2010, 20:16

Voce pode analizar a distancia entre ele e você e a partir dai tomar alguma decisão de atirar ou nao. Mais se for fazer assim é bom criar uma variavel para temporizar o tiro senao vai sair uma fita de tiros.
Quando a sua segunda pergunta, voce tem que vincular o objeto 'Head' a uma instancia e não a todos os obejtos de tal classe (como voce fez). Voce pode fazer assim:
No Evento Create do do Objeto que tera o Head:
Código:

head = instance_create(x, y, objHead);
head.vinculo = id; //aqui eu armazeno o objeto no proprio objeto head
Agora no evento de Colisão do Head com o Tiro:
Código:

with (vinculo) instance_destroy();//aqui destruimos o objeto vinculado
instance_destroy();//aqui destruimos o head
Outro jeito de Fazer

Na verdade voce nem precisaria de outro objeto. Bastaria voce colocar um calculo no evento de colisão do tiro e verificar se a distancia dele no ponto onde voce quer está a um certo raio. Por exemplo:
No Evento de colisao do Tiro
Código:

//verificamos se foi na cabeça
var xx, yy;
with (other)
{
  xx = x;
  yy = y;

if (point_distance(xx, yy, x, y) < 10)
{
    //Acerrtou na cabeça
} else
{
  //Nao acertou na cabeça
}
Obs. Supondo que o ponto centro do objeto esteja nessa cabeça. Se estiver em outro ponto tem que dar uma arrumada no calculo da distancia em relacao ao tal ponto.


Última edição por vinians em Sab 27 Fev 2010, 23:50, editado 1 vez(es)

vinians

Ranking : Nota B
Número de Mensagens : 2490
Idade : 27
Data de inscrição : 18/09/2008
Notas recebidas : B-C-A-C
Reputação : 52
Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 1

http://xcreatorgames.weebly.com/

Voltar ao Topo Ir em baixo

Re: Como eu faço uma AI de tiros em 2D?

Mensagem por bimorx em Sab 27 Fev 2010, 23:01

e como faço isso sem usar CODEs? ainda não sei mecher nisso mas pretendo aprender logo... vlw meu amigo! XD

bimorx

Número de Mensagens : 153
Idade : 21
Data de inscrição : 24/01/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Como eu faço uma AI de tiros em 2D?

Mensagem por Conteúdo patrocinado Hoje à(s) 17:54


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