Conectar-se
Quem está conectado
42 usuários online :: 2 usuários cadastrados, Nenhum Invisível e 40 Visitantes

Cambalinho, ReisBlender

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 17/01/2012
Número de Mensagens : 6
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuário

Duas duvidas sobre movimento em diagonal e ''OPÇAO CORRER"

em Qui 19 Jan 2012, 14:48
Olá""!

Tenho duas duvidas sobre assuntos parecidos:

1º-Como fazer o personagem andar em diagonal presionando seta pra cima e seta pro lado ,ou seta pra baixo e seta pro lado desejado q quer ir. Mudando pro sprite em diagonal spr_diag_dir, esq ,baixo esquerda ,e baixo direita. Question
--
Ja fiz ele nas 4 direçoes retas, horizontal e vertical.


2ºComo ter a opçao "correr" no jogo presionando a tecla Z para ele ir mais rapido em todas as 8 direçoes em questao, presionando o Z ele mude pra spr_Correr_taldireçao e ande mais rapido que o padrao. Question
Data de inscrição : 12/04/2010
Número de Mensagens : 340
Insígnias de JAM :

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

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

Re: Duas duvidas sobre movimento em diagonal e ''OPÇAO CORRER"

em Qui 19 Jan 2012, 15:00
Bem, para mover na diagonal você pode checar se duas teclas estão sendo pressionadas, e em caso afirmativo usar coordenadas x e y pra fazer o movimento. Pra trocar de sprite tem a função sprite_index que faz isso. Fica mais ou menos assim:

Código:

if keyboard_check(vk_rigth) and keyboard_check(vk_up) // checa se estas duas teclas estão sendo precionadas
{
x+=5 //Move 5 pixel's pra direita
y+=5  //Move 5 pixel's pra cima, fazendo se mover em diagonal
}

Basta fazer o mesmo processo pras outras combinações, como baixo+esquerda e etc... E adaptar o codigo a isso.

Quanto a opção de correr pode fazer a mesma coisa. Checar se a tecla z esta sendo pressionada junto com as outras e com isso fazer ele ir mais rapido. Ficaria assim:

Código:


if keyboard_check(ord("Z")) and  keyboard_check(vk_right)
{
x+=10
}



Os valores pra x podem ser trocado a sua prefencia. Espero ter ajudado.
avatar
Ranking : Nota C
Notas recebidas : C + C
Data de inscrição : 19/10/2011
Número de Mensagens : 337
Insígnias de JAM :

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

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

Re: Duas duvidas sobre movimento em diagonal e ''OPÇAO CORRER"

em Qui 19 Jan 2012, 15:11
http://gmbr.forumeiros.com/t20323-fazendo-movimento-top-down-rpg-realistico#152559

Tente usar este tutorial, só que ele nao tem a opcao de correr, entao faca o seguinte.

Defina uma variavel no player chamada velocidade (deixe como 5)
Código:
velocidade=5

Agora onde tem este código :
Código:
friction=0.3
if speed>5 then speed=5
image_speed=speed/5
if speed=0 then image_index=0

Deixe deste jeito :
Código:
friction=0.3
if speed>velocidade then speed=velocidade
image_speed=speed/5
if speed=0 then image_index=0

Agora faca outro codigo assim para fazer ele correr :
Código:
if keyboard_check_pressed(ord('Z')) then velocidade=8
if keyboard_check_released(ord('Z')) then velocidade=5

Nao precisa de sprites especificas para correr, pois o codigo aumentara automaticamente a velocidade da animacao conforme sua velocidade. espero ter ajudado.
avatar
Data de inscrição : 17/01/2012
Número de Mensagens : 6
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Ver perfil do usuário

Re: Duas duvidas sobre movimento em diagonal e ''OPÇAO CORRER"

em Qui 19 Jan 2012, 19:31
Obg vcs dois consegui resolver os problemas do game

vlw
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

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

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

Re: Duas duvidas sobre movimento em diagonal e ''OPÇAO CORRER"

em Qui 19 Jan 2012, 19:47
Como o tópico foi resolvido, está sendo trancado. Se quiser reabrir, entre em contato com a moderação.
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