Conectar-se
Quem está conectado
19 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 19 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota D
Notas recebidas : D
Data de inscrição : 21/04/2014
Número de Mensagens : 192
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 1
Reputação : 12

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

Movimentação do personagem e trocas de sprites.

em Seg 29 Set 2014, 15:36
Reputação da mensagem: 100% (1 votos)
Título: Movimentar personagem e trocar as sprites.
Versão do GM: Tutorial qualquer uma, engine GM8
Dificuldade: Fácil
Link para download da Engine: Engine
Requer Extensões: Não
Requer DLLs: Não
Tags: Sprite,Movimentar,Personagem.

########################################################

Após algumas pessoas me perguntarem sobre a mesma coisa, resolvi criar esse pequeno tutorial para melhor ajuda-las.

Então vamos lá, primeiramente crie uma sprite do player na direita e na esquerda de a eles o nome de player_right e player_left, e crie um objeto e de a ele o nome  de obj_player ou qualquer um outro, e crie um Create Event nele e araste uma execute code e coloque isso:
Código:
vel_pulo=-8//variável que determina a altura do pulo.
lado=0 // variável que checa o lado do personagem, ex: 0 ou 360 para direita, 180 esquerda, 90 para cima e 270 para baixo entre outros.

Feito isso Crie um Step Event araste uma execute code e coloque isso:

Código:

//Esse código é da engine Movimentação e adaptei algumas coisas

//Esquerda
if keyboard_check(vk_left)
{lado =180
sprite_index = player_left
if place_free(x-4,y){x -=4}
}
if keyboard_check (vk_down) or keyboard_check (vk_up) or keyboard_check (vk_right) or keyboard_check (vk_left) = true
{
image_speed=0.5
}
 else
{
image_speed =0
image_index =0
}

//Direita

if keyboard_check(vk_right)
{lado =0
sprite_index = player_right
if place_free(x+4,y){x +=4}
if keyboard_check (vk_down) or keyboard_check (vk_up) or keyboard_check (vk_left) or keyboard_check (vk_right) = true
{
image_speed=0.5
}
 else
{
image_speed =0
sprite_index =0
}
}

E pronto a movimentação do seu personagem esta feita, qualquer duvida veja a engine nela tem a movimentação a colisão com o solo e a gravidade.


Última edição por Wendryos - Black Horn em Ter 30 Set 2014, 14:59, editado 1 vez(es)
avatar
Ranking : Nota D
Data de inscrição : 25/03/2014
Número de Mensagens : 399
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 37

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

Dica

em Seg 29 Set 2014, 15:54
Boa tarde Wendryos - Black Horn,
Cara, posso te dar uma dica?
Por que não utiliza o image_xscale para economizar sprites? Dessa forma não precisa ficar criando sprites para direita e esquerda.

Boa sorte com o tutorial.
avatar
Ranking : Nota D
Notas recebidas : D
Data de inscrição : 21/04/2014
Número de Mensagens : 192
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 1
Reputação : 12

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

Re: Movimentação do personagem e trocas de sprites.

em Seg 29 Set 2014, 16:12
É uma boa usar, mas eu pessoalmente não gosto.



Mas caso alguem queria usar é só trocar:
Código:
sprite_index=player_right ou player_left

por:

Código:
//Direita

image_xscale=1

//Esquerda

image_xscale=-1
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