IA do meu inimigo

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

IA do meu inimigo

Mensagem por play_sound_games em Qui 27 Jan 2011, 18:08

e assim eu fiz um topico se nao coloquei tudo o que porecisava por isso nao entendi entao to fazendo esse pra ficar melhor explicaado....

eu tenho um inimigo
queria que quando chega a uma tal distancia ele começa a andar pra cima de mim dai quanto tiver colidindo comigo ele me ataca so que o ataque aconteçe-se de 5 em 5 segundos

tipo ele vem me ataca e fica parado 5 segundos e depois ataca e para 5 seg

assim por diante

(nao sei se tem diferença mas e jogo de pulo e se caso trenho que fazer outros obj me fala pq nunca fiz do meu inimigo assim)

play_sound_games

Número de Mensagens : 42
Idade : 21
Data de inscrição : 14/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por play_sound_games em Sex 28 Jan 2011, 19:33

desculpe pelo duplo post mas


ME AJUDEM so falta isso pro meu 1º mega jogo

play_sound_games

Número de Mensagens : 42
Idade : 21
Data de inscrição : 14/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por Anderson3d em Sex 28 Jan 2011, 20:12

no create inicie uma variavel para_ataque=false

no step para ele ir pra cima do player

Código:
//verifica se esta a direita ou a esquerda:
if distance_to_object(obj_player)<200 { //se estiver perto do player
if obj_player.x<= obj_inimigo.x {speed=-5}else{speed=5}  //movimenta o inimigo
}

Acima faz o inimigo ir para perto do player

na colisão vc coloca algo como uma variavel criando o ataque:

Código:

ataque=true //variavel diz que ele ataque
if para_ataque=false{alarm[0]=120;para_ataque=true} //cria tempo para um novo ataque

no alarm[0] coloca algo como
Código:

if place_meeting(x,y,obj_player) { //se tiver tocando no player
ataque=true  //ele ataca novamente
alarm[0]=120 //segue mais alguns segundos para atacar
}

no step do inimigo vc controla o fim do ataque de alguma forma que se encaixe no seu código... eu faria com uma negação de colisão, tipo:
Código:

if !place_meeting(x,y,obj_player) and atacando =true{ //se não tiver tocando no player e não estiver atacando
atacando=false
para_ataque=false //ele nao ataca mas esta apto a atacar
}
formado

espero ter ajudado.

Anderson3d

Ranking : Nota A
Número de Mensagens : 1479
Idade : 33
Data de inscrição : 15/02/2009
Notas recebidas : A - A
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

http://www.indiegamebr.com

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por play_sound_games em Sab 29 Jan 2011, 13:01

perai fiquei com duvida

meu movimentos dir e
direçao=1
e esq e direçao =0

dai no step como faço?
tenho que fazer um objeto pra cada movimento? pq ta obj_inimigo e tals

play_sound_games

Número de Mensagens : 42
Idade : 21
Data de inscrição : 14/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por Markituh em Sab 29 Jan 2011, 13:09

??? Agora fiquei confuso. Vamos ver se eu consigo traduzir isso...
Meus movimentos direita é direção=1, e esquerda é direção=0. Então no Step como faço?
Não, você não tem que fazer um objeto para cada movimento, é horrível >__< Então, na parte que movimenta o inimigo só você declarar essas variáveis, mais aí tem que fazer uma certa checagem para ver se o player está na esquerda e na direita:
Código:
if player.x<x
{
direita = 0 // Esquerda
}
if player.x>x
{
direita = 1 // Direita
}

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por play_sound_games em Sab 29 Jan 2011, 13:19

if player.x
e pra colocar o que nissso
to ficando confuso ja

play_sound_games

Número de Mensagens : 42
Idade : 21
Data de inscrição : 14/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por Markituh em Sab 29 Jan 2011, 13:21

Colocar nada, só colocar esse código no Step. Deve ser por que você não viu o "x", checa se a X do player é menor("<") ou maior(">") que a do inimigo, então declara a variável de direção.

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por play_sound_games em Sab 29 Jan 2011, 13:45

olha nao estou entendendo mais nada

tentei colocar mais nao daintou fala que da erro no step


entao vou passar minha engine
o carinha inimigo ta la embaixo


http://www.4shared.com/file/sEqdMGyc/ichigu_3.html

play_sound_games

Número de Mensagens : 42
Idade : 21
Data de inscrição : 14/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por Markituh em Sab 29 Jan 2011, 14:01

.______________. Por que esse GMK tem 3 MB? Shocked Mas assim, não tem o código do distance_to_object que o Anderson te passou? Só é declarar a variável dentro dos colchetes:
Código:
//verifica se esta a direita ou a esquerda:
if distance_to_object(obj_cara)<200 { //se estiver perto do player
if obj_cara.x<= obj_inimigo.x {
direita = 0
speed=-5}
else{
direita = 1
speed=5}  //movimenta o inimigo
}
Só você trocar o código por esse.

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por Anderson3d em Sab 29 Jan 2011, 14:31

companheiro para verificar variaveis de outros objetos no seu objeto basta colocar o nome do objeto seguido de um ponto final e o nome da variavel... exemplo:
quero que meu inimigo veja se o player que se chama obj_player esta pulando (verificando uma variavel do player chamada pulando) ou nao. Se ele pular o inimigo pula tmb.
no step do inimigo bota:
Código:

if obj_player.pulando = true {pulando=true}
Entendeu como funciona esse tipo de ai onde o inimigo verifica as variaveis do player?

Anderson3d

Ranking : Nota A
Número de Mensagens : 1479
Idade : 33
Data de inscrição : 15/02/2009
Notas recebidas : A - A
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

http://www.indiegamebr.com

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por play_sound_games em Sab 29 Jan 2011, 14:37

agora aggora to ocupadao mas vou tentar e tem 3 MB que eu colquei tudo ja as imagen menu e tals

por isso CHAMA MEGA JOGO =)

obrigado por tudo se der hj tento fazer isso senao amannha sem falta fazerrei

thank's again

play_sound_games

Número de Mensagens : 42
Idade : 21
Data de inscrição : 14/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: IA do meu inimigo

Mensagem por Conteúdo patrocinado Hoje à(s) 20:15


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