Limitar movimento para fora de uma area

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

Limitar movimento para fora de uma area

Mensagem por felnw em Qui 13 Jun 2013, 18:36

Todos sabemos que para impedir que um objeto siga em uma direção se ele estiver adicionando x ou y em seu movimento simplesmente dizemos que o proximo x ou y nao esta acessivel, entao ele nao seguira nesta direção. Mas e quando a area a ser limitada fica à frente do objeto (à frente neste caso seria na direção dele mais velocidade) como devo fazer para limitar seu acesso a este ponto sem usar colisão de sprites?
avatar
felnw

Ranking : Nota A
Notas recebidas : A-A-B-A-B
Data de inscrição : 23/12/2011
Número de Mensagens : 33
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário http://felnw.blogspot.com

Voltar ao Topo Ir em baixo

Re: Limitar movimento para fora de uma area

Mensagem por theguitarmester em Qui 13 Jun 2013, 18:44

lengthdir_x(ir,direction)
lengthdir_y(ir,direction)

essa funbção fará isto que quer, ela irá calcular a posição de acordo com o ângulo.

ir = tamanho de pixels à andar
direction = direção
avatar
theguitarmester

Ranking : Sem avaliações
Notas recebidas : B
Data de inscrição : 28/02/2012
Número de Mensagens : 1908
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1

Prêmios
   : 2
   : 2
   : 1

Ver perfil do usuário http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Voltar ao Topo Ir em baixo

Re: Limitar movimento para fora de uma area

Mensagem por Gonçalves em Qui 13 Jun 2013, 18:51

Como o guitar disse, basta usar o lengthdir, e em length usar o speed. Pode fazer isso:

Código:
var xx,yy;

xx = lengthdir_x(speed,direction)
yy = lengthdir_y(speed,direction)

if place_empty(xx,yy)...

Se você quiser posso te passar a engine de colisões que usei no meu joguinho de tanque. É bem simples e eu particularmente gosto muito do resultado.
avatar
Gonçalves

Ranking : Nota B
Notas recebidas : B + A + C
Data de inscrição : 29/10/2010
Número de Mensagens : 1013
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 2
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Limitar movimento para fora de uma area

Mensagem por Conteúdo patrocinado


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