[Duvida] Colisoes com grid

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

[Duvida] Colisoes com grid

Mensagem por macedoboka em Ter 04 Ago 2015, 17:36

tenho a seguinte duvida

isei uma inteligencia artificial com o movimento em grid coloquei todas as sprites mascaradas com retangulo  32,32 completo, e utilizei esse code:

Código:
if place_snapped(32,32)
{
  if (hspeed == 0)
  {
    if (random(3)<1 && place_free(x-4,y))
      { hspeed = - velocidade; vspeed = 0;}
    if (random(3)<1 && place_free(x+4,y))
      { hspeed =  velocidade ; vspeed = 0;}
  }
  else
  {
    if (random(3)<1 && place_free(x,y-4))
      { hspeed = 0; vspeed = -velocidade;}
    if (random(3)<1 && place_free(x,y+4))
      { hspeed = 0; vspeed =  velocidade;}
  }
}if place_snapped(32,32)
{
  if (hspeed == 0)
  {
    if (random(3)<1 && place_free(x-4,y))
      { hspeed = - velocidade; vspeed = 0;}
    if (random(3)<1 && place_free(x+4,y))
      { hspeed =  velocidade ; vspeed = 0;}
  }
  else
  {
    if (random(3)<1 && place_free(x,y-4))
      { hspeed = 0; vspeed = -velocidade;}
    if (random(3)<1 && place_free(x,y+4))
      { hspeed = 0; vspeed =  velocidade;}
  }
}

sao 3 objetos com essa IA e um que é o jogador , mas quando batem de frente eles travam , ja tentei todas as formas que conheco pra resolver , mas nao conseguir sucesso , gostaria de uma luz de como fazer eles nao pararem e permanecer na grid que estao!

agradeco

macedoboka

Número de Mensagens : 63
Idade : 26
Data de inscrição : 02/03/2014
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Duvida] Colisoes com grid

Mensagem por Sewer Crawler em Ter 04 Ago 2015, 22:23

Encontrei um código parecido com o seu, veja se te ajuda.
Código:
if place_snapped(16,16)
{
speed=0;
if keyboard_check(vk_up)
    {
    if !place_meeting(x,y-16,obj_Wall)
        {
        vspeed=-4;
        exit;
        }
    }
if keyboard_check(vk_down)
    {
    if !place_meeting(x,y+16,obj_Wall)
        {
        vspeed=4;
        exit;
        }
    }
if keyboard_check(vk_left)
    {
    if !place_meeting(x-16,y,obj_Wall)
        {
        hspeed=-4;
        exit;
        }
    }
if keyboard_check(vk_right)
    {
    if !place_meeting(x+16,y,obj_Wall)
        {
        hspeed=4;
        exit;
        }
    }
}

Sewer Crawler

Número de Mensagens : 236
Idade : 23
Data de inscrição : 08/10/2014
Reputação : 27
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Duvida] Colisoes com grid

Mensagem por Gonçalves em Qua 05 Ago 2015, 00:18

Eu fiz uma engine dessas recentemente usando arrays. A instância, ao mover, já "fecha" a grid de destino assim eles nunca travam no mesmo lugar.

https://db.tt/3WwjdOag

Na array, 0 indica "livre" e 1 é "fechado". Só que eu comentei tudo em inglês porquê fiz para a GMC.

Gonçalves

Ranking : Nota B
Número de Mensagens : 1013
Data de inscrição : 29/10/2010
Notas recebidas : B + A + C
Reputação : 79
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Duvida] Colisoes com grid

Mensagem por Conteúdo patrocinado Hoje à(s) 03:47


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