Conectar-se
Quem está conectado
18 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 18 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

(resolvido) problemas com IA

em Dom 26 Out 2014, 00:26
então galera, eu nao estava querendo usar o move_toward_point e esses outros codigos para seguir e resolver fazer um para mim, esse aqui:
Código:

if instance_exists(obj_tanque){
if x < obj_tanque.x{
direction = 0
speed = 3}
else{
direction = 180;
speed = 3;}
if y < obj_tanque.y{
direction = 270
speed = 3}
else{
direction = 90;
speed = 3;}}

enfim, mas esse código ta fazendo ele andar só na vertical, ele fica tremendo parado enves de seguir para a direita ou esquerda, e nao consegui arrumar, alguem sabe o que posso fazer?


Última edição por manobrother em Dom 26 Out 2014, 23:02, editado 3 vez(es)
avatar
Ranking : Nota B
Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Número de Mensagens : 1092
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 31

Prêmios
   : 1
   : 1
   :
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 14:42
.Onde vc esta alterando as variaveis cima e lados?
Nesse code apenas pergunta se elas são true
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 15:08
@Thyago escreveu:  .Onde vc esta alterando as variaveis cima e lados?
Nesse code apenas pergunta se elas são true
na verdade esqueci de tirar aquilo, eu ia usar para tentar arrumar mas nao deu. Mas agora troquei tudo e coloquei as coisas certas
avatar
Ranking : Nota B
Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Número de Mensagens : 1092
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 31

Prêmios
   : 1
   : 1
   :
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 15:16
.Ele anda na vertical porque você esta mudando o direction para 90 ou 270, ele primeiro muda para 0 ou 180, e depois para 90 ou 270.
.E quando ele chega a 1 ou 2 pixels do outro objeto ele move 3 e passa e então volta 3 e volta demais e assim não para nunca.
.Você quer que ele só se mova nessas 4 direções 0,90,180,270?
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 15:31
@Thyago escreveu:.Ele anda na vertical porque você esta mudando o direction para 90 ou 270, ele primeiro muda para 0 ou 180, e depois para 90 ou 270.
.E quando ele chega a 1 ou 2 pixels do outro objeto ele move 3 e passa e então volta 3 e volta demais e assim não para nunca.
.Você quer que ele só se mova nessas 4 direções 0,90,180,270?
sim só nessas 4
avatar
Ranking : Nota B
Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Número de Mensagens : 1092
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 31

Prêmios
   : 1
   : 1
   :
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 15:36
tente assim

Código:

if instance_exists(obj_tanque){
if(abs(x-obj_tanque.x))<(abs(y-obj_tanque.y)){
direction=point_direction(x,0,obj_tanque.x,0)
}
else
{
direction=point_direction(0,y,0,obj_tanque.y)
}

speed=min(3,point_distance(x,y,obj_tanque.x,obj_tanque.y))
}
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 15:51
@Thyago escreveu: tente assim

Código:

if instance_exists(obj_tanque){
if(abs(x-obj_tanque.x))<(abs(y-obj_tanque.y)){
direction=point_direction(x,0,obj_tanque.x,0)
}
else
{
direction=point_direction(0,y,0,obj_tanque.y)
}

speed=min(3,point_distance(x,y,obj_tanque.x,obj_tanque.y))
}

agora ele nao desce nem sobe, so vai pros lados
avatar
Ranking : Nota B
Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Número de Mensagens : 1092
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 31

Prêmios
   : 1
   : 1
   :
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 15:54
.Foi mal eu não tinha testado, fiz de cabeça, agora vai
Código:

if instance_exists(obj_tanque){
if((abs(x-obj_tanque.x))<(abs(y-obj_tanque.y))and abs(x-obj_tanque.x)=0)
or (abs(y-obj_tanque.y)=0 )
{
direction=point_direction(x,0,obj_tanque.x,0)
speed=min(3,point_distance(x,0,obj_tanque.x,0))
}
else
 
{
direction=point_direction(0,y,0,obj_tanque.y)
speed=min(3,point_distance(0,y,0,obj_tanque.y))
}

}
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 17:32
@Thyago escreveu: .Foi mal eu não tinha testado, fiz de cabeça, agora vai
Código:

if instance_exists(obj_tanque){
if((abs(x-obj_tanque.x))<(abs(y-obj_tanque.y))and abs(x-obj_tanque.x)=0)
or (abs(y-obj_tanque.y)=0 )
{
direction=point_direction(x,0,obj_tanque.x,0)
speed=min(3,point_distance(x,0,obj_tanque.x,0))
}
else
 
{
direction=point_direction(0,y,0,obj_tanque.y)
speed=min(3,point_distance(0,y,0,obj_tanque.y))
}

}

funcinou, mas queria saber, oq vc fez? nao entendi isso que vc fez
avatar
Ranking : Nota B
Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Número de Mensagens : 1092
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 31

Prêmios
   : 1
   : 1
   :
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 17:45
.Ele verifica qual distancia é menor, a horizontal ou a vertical.
.Caso a menor distancia>0 ele vai na menor, se não ele escolhe a outra.
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 17:55
@Thyago escreveu:.Ele verifica qual distancia é menor, a horizontal ou a vertical.
.Caso a menor distancia>0 ele vai na menor, se não ele escolhe a outra.
para que serve esse abs?
avatar
Ranking : Nota B
Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Número de Mensagens : 1092
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 31

Prêmios
   : 1
   : 1
   :
Ver perfil do usuário

Re: (resolvido) problemas com IA

em Dom 26 Out 2014, 18:02
.Retorna o valor positivo
tipo:

Código:
abs(15-20)=5;
Conteúdo patrocinado

Re: (resolvido) problemas com IA

Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum