colisão, meu personagem trava na parede

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

colisão, meu personagem trava na parede

Mensagem por macedoboka em Ter 18 Mar 2014, 02:16

ola pessoas , estou com um problema com colisoes que esta me pertubando

quando eu encosto na parede que inserir a colisao meu personagem fica travando na parede!

tipo eu coloco pra direita tudo que posso, quando ele encosta na parede , so fuciona o esquerda , mas o up e o down trava , ele faz o movimento do sprite ,porem , fica no mesmo lugar!

agradeço a ajuda!

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: colisão, meu personagem trava na parede

Mensagem por TMM em Ter 18 Mar 2014, 10:55

já tentou colocar uma mask no objeto?, talvez este pode ser o problema, crie uma sprite com a mesma dimenssão do sprite do player por exemplo "32x32", coloca tudo de preto, vá no objeto e em mask clique e selecione a sprite q voce criou

TMM

Número de Mensagens : 21
Idade : 18
Data de inscrição : 10/02/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: colisão, meu personagem trava na parede

Mensagem por gui.alfaia em Qua 19 Mar 2014, 15:58

Código:
move_contact_solid(direction,8)
vspeed=0

gui.alfaia

Número de Mensagens : 80
Idade : 14
Data de inscrição : 19/03/2014
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: colisão, meu personagem trava na parede

Mensagem por Gabreel em Qua 19 Mar 2014, 16:24

[Create]
Código:
velocidade = 3;

[Step] - Substitua sua movimentação por isso
Código:
if(place_free(x+velocidade,y) && keyboard_check(vk_right)){x+=velocidade}
if(place_free(x-velocidade,y) && keyboard_check(vk_left)){x-=velocidade}

Gabreel

Número de Mensagens : 2227
Idade : 20
Data de inscrição : 02/10/2009
Reputação : 52
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: colisão, meu personagem trava na parede

Mensagem por chicoweb em Qui 20 Mar 2014, 13:27

Até hoje eu não consigo entender porque o gm vem com esse problema como padrão, qual a finalidade de travar os objetos solidos quando se enconstam????

Não existe nenhum jogo que funciona assim, agente tem que ficar se matando pra driblar esse problema, quando ja poderia vir de padrão os solidos não se encostarem.

E vira e mexe ainda pega agente, quando por exemplo um objeto com sprite de formato irregular roda perto do solido, o codigo do gabreel não serveria.

Exemplo um monstro com um rabo grande não encosta no bloco ate ai tudo bem, mas se ele girar e o rabo "entrar" no bloco, trava fica agarrado nele do mesmo jeito.

chicoweb

Ranking : Nota C
Número de Mensagens : 666
Idade : 40
Data de inscrição : 15/05/2012
Notas recebidas : B+C
Reputação : 49
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: colisão, meu personagem trava na parede

Mensagem por Gabreel em Qui 20 Mar 2014, 14:08

Para esses casos, existem as masks, e por isso é importante centralizar a origem!

Gabreel

Número de Mensagens : 2227
Idade : 20
Data de inscrição : 02/10/2009
Reputação : 52
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: colisão, meu personagem trava na parede

Mensagem por chicoweb em Qui 20 Mar 2014, 20:13

Achei aqui uma engine que o problema ocorre, então gabreel o que vc faria pra resolver isso (Se alguem sabe como resolver é bem vindo também):

Se vc curvar perto da parede ele trava, mesmo com move_contact no colision, tentei tb outras cosas mas nao deu certo



A engine ta aqui:

[url=https://www.dropbox.com/s/zel9y0kg4k6122f/obj trava no bloco ao rodar.gmk]https://www.dropbox.com/s/zel9y0kg4k6122f/obj%20trava%20no%20bloco%20ao%20rodar.gmk[/url]

chicoweb

Ranking : Nota C
Número de Mensagens : 666
Idade : 40
Data de inscrição : 15/05/2012
Notas recebidas : B+C
Reputação : 49
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: colisão, meu personagem trava na parede

Mensagem por Zero. em Qui 20 Mar 2014, 20:16

Vc esta usando desenhando o carro e mudando o angulo do desenho no draw ?

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: colisão, meu personagem trava na parede

Mensagem por chicoweb em Qui 20 Mar 2014, 20:24

No step, pelo image_angle

chicoweb

Ranking : Nota C
Número de Mensagens : 666
Idade : 40
Data de inscrição : 15/05/2012
Notas recebidas : B+C
Reputação : 49
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: colisão, meu personagem trava na parede

Mensagem por WellingtonBecker em Qui 20 Mar 2014, 20:43

Chicoweb, adicionei esse código na colisão do carro com o bloco e deu certo.
Código:
   
while (!place_free(x+1,y))
    {x-=1;}
    while (!place_free(x-1,y))
    {x+=1;}

WellingtonBecker

Ranking : Nota D
Número de Mensagens : 820
Idade : 35
Data de inscrição : 09/05/2013
Notas recebidas : D
Reputação : 105
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: colisão, meu personagem trava na parede

Mensagem por chicoweb em Qui 20 Mar 2014, 23:35

Valeu WellingtonBecker


Perfect agora ta resolvido!

macedoboka leia tudo ai mano, que seu problema tb ta resolvido

chicoweb

Ranking : Nota C
Número de Mensagens : 666
Idade : 40
Data de inscrição : 15/05/2012
Notas recebidas : B+C
Reputação : 49
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: colisão, meu personagem trava na parede

Mensagem por Conteúdo patrocinado Hoje à(s) 10:18


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