Movimento por grids

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

Movimento por grids

Mensagem por Roxcast em Ter 01 Maio 2012, 22:42

Galera tipo..
To fazendo um rpg isomentrico e qria por o movimentos por grids...ate achei uns tutos interessantes.. porem sem mtas explicaçoes...alguem poderia me indicar um tuto ou ate uma ajuda aki..? uma engine pra min estudar sei la... vlw!

Roxcast

Número de Mensagens : 113
Idade : 24
Data de inscrição : 26/10/2009
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: Movimento por grids

Mensagem por Super Maker em Qua 02 Maio 2012, 08:05

Se ouver engines desse tipo (e tem mesmo), elas provavelmente estejam sem comentários nas linhas dos scripts, então vai ser o mesmo trabalho que você estudar os tutoriais que viu.
O que poderia ser melhor pra você é postar perguntas espeíficas no decorrer do desenvolvimento do seu projeto (tenho certeza que iremos ajudar bastante). Assim você aprende devagar (como é o certo) e pode até se especializar em RPG por aqui.
Vou te dar um breve exemplo de movimentos em grid, o mais resumido que eu já fiz.
Lembrando que a imagem ou máscara do objeto deve ter o tamanho da grid.
No evento step Event Step
Código:
alinhado=place_snapped(32,32);
if keyboard_check(vk_up) and alinhado{motion_set(90,4);}//cima
if keyboard_check(vk_down) and alinhado{motion_set(270,4);}//baixo
if keyboard_check(vk_left) and alinhado{motion_set(180,4);}//esquerda
if keyboard_check(vk_right) and alinhado{motion_set(0,4);}//direita
if keyboard_check(vk_nokey) and alinhado{motion_set(360,0);}//parar
E pra testar visualmente o alinhamento, coloca isso no evento draw Event Draw
Código:
for (i=0;i<640;i+=32){draw_line(0,i,room_width,i);draw_line(i,0,i,room_height);}
Até mais!

Super Maker

Número de Mensagens : 646
Idade : 33
Data de inscrição : 09/07/2011
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: Movimento por grids

Mensagem por Roxcast em Qua 02 Maio 2012, 15:13

Humm bom msm... Ja intendi como funciona soh dei uma pesquisada no codigo ai q vc mando no propro help do GM.
Mas no caso era nessesario criar o "alinhado=place_snapped=(32,32)" ? nao poderia soh colocar o place_snapped no codigo?

Roxcast

Número de Mensagens : 113
Idade : 24
Data de inscrição : 26/10/2009
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: Movimento por grids

Mensagem por saim em Qua 02 Maio 2012, 15:44

poderia sim. Na verdade, poderia até aninhar os ifs:
Código:
if (place_snapped == true){
se (seta pra cima){move pra cima}
se (seta pra baixo){move pra baixo}
//etc
}

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Movimento por grids

Mensagem por Roxcast em Sab 05 Maio 2012, 12:23

eu ate intendo um poco de gml soh pq tava meio inferrujado o meu primeiro e unico jogo completo faz um ano..Metal slug amazonia kkk tem aki..
vlw ai gente!
Edit:testei a engine certinho td lgl..
Porem na movimentaçao isometrica da problema o char nao para!

Roxcast

Número de Mensagens : 113
Idade : 24
Data de inscrição : 26/10/2009
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: Movimento por grids

Mensagem por saim em Seg 07 Maio 2012, 09:46

Roxcast escreveu:Porem na movimentaçao isometrica da problema o char nao para!
Isso pode ter diversas causas. Uma das possibilidades é que a sua velocidade não seja um divisor do tamanho da grid, o que faria com que o objeto nunca se alinhasse à grid e, consequentemente, o teste por "place_snapped" sempre retorne "false". Teste assim: use uma velocidade igual ao tamanho da grid (ou vice-versa) e teste. Se o problema for esse, o personagem vai parar assim que você soltar as teclas.

Outra possibilidade é que o personagem esteja realmente se movendo num cenário isométrico. "place_snapped" só funciona em grids ortogonais (com ângulos de 90°). Se for esse o caso, precisamos de uma teoria toda nova.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Movimento por grids

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


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