Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
[Tutorial]-Primeiro jogo com GML (Aula 01)
3 participantes
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
[Tutorial]-Primeiro jogo com GML (Aula 01)
- Título: Primeiro jogo com GML (Aula 01)
- Versão do GM: Game Maker Studio(qualquer versão)
- Dificuldade: iniciante
- Link para download da Engine: [Download]Engine
- Link para download dos Recursos: [Download]Recursos
- Requer Extensões: Não
- Requer DLLs: Não
- Tags: Tutorial-Game-Maker-Studio-Primeiro-Jogo-Plataforma.
Olá gente bonita!! O Puxa Saco!!
Hoje vim trazer um tutorial para iniciantes, é sobre como criar um jogo de plataforma com GML.
Bom chega de papo e vamos ao trabalho. O mandão
Esta é a primeira aula, então vai ser bem simples.
1° Abra o GMS, crie um novo projeto e dê o nome de Primeiro Jogo(opcional)
depois clique no botão Create a Sprite ,vá até a pasta recursos (que você faz download logo acima),sprites, maze-platform e procure a sprite "explorer_right_strip8", dê o nome de spr_explorador.
Agora faça a mesma coisa mas dessa vez a sprite vai ser a "explorer_jumpright" e o nome vai ser spr_no_ar.
agora abra novamente a spr_explorador e coloque a origem em 16x31 (x = 16, y = 31),clique em modify mask e depois em full image
faça a mesma coisa para a spr_no_ar
logo apos crie uma sprite translucida, eu fiz esta , e dê o nome de spr_bloco.
pronto terminamos...
o que? ja terminamos?
...com as sprites. hehe
agora vamos criar os objetos.
clique em Create an object , dê o nome de obj_explorador e coloque a sprite spr_explorador, agora vamos programar ele.
No evento create coloque o seguinte codigo
- Código:
///variaveis
pulo = 1 //variavel que controla os pulos
- Código:
///código step
//gravidade
if place_free(x,y + 4){ // se o explorador estiver no ar
gravity = 1 //tem gravidade
sprite_index = spr_no_ar // o sprite é o spr_no_ar
}
else{ //se não
gravity = 0 //não tem gravidade
pulo = 1
sprite_index = spr_explorador //o sprite é o spr_explorador
}
//movimentos
if place_free(x + 4,y) and keyboard_check(ord("D")){ //se estiver desocupado a posiçao 4 pixels a direita do explorador e a tecla "D" estiver pressionada...
x += 4 //...o explorador se move 4 pixels para a direita
image_xscale = 1 //o sprite esta virado para a direita
}
else if place_free(x - 4,y) and keyboard_check(ord("A")){ //se estiver desocupado a posiçao 4 pixels a esquerda do explorador e a tecla "A" estiver pressionada...
x -= 4 //...o explorador se move 4 pixels para a esquerda
image_xscale = -1 //o sprite esta virado para a esquerda
}
else { // se não
image_index = 0 // se nao estiver pressionada nenhuma tecla o explorador para de mover os pés
}
//pulo
if keyboard_check_pressed(ord('W'))and (pulo <= 2){ // se estiver presionada a tecla "W" e o explorador deu menos de 2 pulos...
vspeed = -12 //o explorador pula
pulo += 1 //e registra que ele deu mais 1 pulo
}
a função keyboard_check() checa se alguma tecla(Key) esta sendo pressionada ex: enquanto você presionar "D" o explorador vai ficar andando, quando voce soltar ele para.
e a função keyboard_check_pressed() checa apenas se uma tecla(key) foi pressionada, e não se esta sendo pressionada ex:se você ficar pressionando a tecla "W" o explorador vai pular apenas 1 vez, mas se você pressionar,soltar e voltar a pressionar ele vai pular 2 vezes.
agora vamos criar um objeto chamado obj_bloco, a sprite dele vai ser a spr_bloco(a sprite translucida que criamos anteriormente),coloque ele como sólido e pronto.
volte ao obj_explorador, adicione um evento collision com obj_bloco e coloque o seguinte codigo
- Código:
///código collision
move_contact_solid(direction,12) //evita um bug(uma travada estilo "escadinha")
vspeed = 0
crie uma room, encha de blocos, coloque o obj_explorador no centro dela e teste.
eu fiz esta
até a proxima aula
Abraços
glasdou- Data de inscrição : 21/11/2013
Reputação : 3
Número de Mensagens : 95
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]-Primeiro jogo com GML (Aula 01)
Bem explicado. Bem comentado. Aprovado!
fredcobain- Games Ranking :
Data de inscrição : 14/04/2011
Reputação : 163
Número de Mensagens : 692
Prêmios :
x 0 x 3 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]-Primeiro jogo com GML (Aula 01)
Olá parabéns pelo tutorial, se ate eu entendi (quase tudo) qualquer um entendi , pf não pare, estou começando a aprender o Game Maker, mas, tenho algumas dúvidas, eu não encontrei esse negócio de origem, e modify mask, vc poderia me mostrar com imagem onde se encontra?? :3
Eu não entendi o por quê de criar a variável pulo, e usá-la no else no código abaixo
E, apenas uma confirmação, você colocou gravity = 1, quando ele está pulando para que a gravidade o puxe para baixo??
Eu não entendi o por quê de criar a variável pulo, e usá-la no else no código abaixo
E eu poderia fazer o código da gravidade assim??agora abra novamente a spr_explorador e coloque a origem em 16x31 (x = 16, y = 31),clique em modify mask e depois em full image
faça a mesma coisa para a spr_no_ar
logo apos crie uma sprite translucida, eu fiz esta , e dê o nome de spr_bloco.
pronto terminamos...
o que? ja terminamos?
...com as sprites. hehe
- Código:
///código step
//gravidade
if place_free(x,y + 4){ // se o explorador estiver no ar
gravity = 1 //tem gravidade
sprite_index = spr_no_ar // o sprite é o spr_no_ar
}
else{ //se não
gravity = 0 //não tem gravidade
pulo = 1
sprite_index = spr_explorador //o sprite é o spr_explorador
}
//movimentos
if place_free(x + 4,y) and keyboard_check(ord("D")){ //se estiver desocupado a posiçao 4 pixels a direita do explorador e a tecla "D" estiver pressionada...
x += 4 //...o explorador se move 4 pixels para a direita
image_xscale = 1 //o sprite esta virado para a direita
}
else if place_free(x - 4,y) and keyboard_check(ord("A")){ //se estiver desocupado a posiçao 4 pixels a esquerda do explorador e a tecla "A" estiver pressionada...
x -= 4 //...o explorador se move 4 pixels para a esquerda
image_xscale = -1 //o sprite esta virado para a esquerda
}
else { // se não
image_index = 0 // se nao estiver pressionada nenhuma tecla o explorador para de mover os pés
}
- Código:
//gravidade
if place_free(x,y + 4){ // se o explorador estiver no ar
y + 4 //ele poderá pular
gravity = 1 //tem gravidade
sprite_index = spr_no_ar // o sprite é o spr_no_ar
}
else{ //se não
gravity = 0 //não tem gravidade
pulo = 1
sprite_index = spr_explorador //o sprite é o spr_explorador
}
- Código:
//pulo
if keyboard_check_pressed(ord('W'))and (pulo <= 2){ // se estiver presionada a tecla "W" e o explorador deu menos de 2 pulos...
vspeed = -12 //o explorador pula
pulo += 1 //e registra que ele deu mais 1 pulo
}
E, apenas uma confirmação, você colocou gravity = 1, quando ele está pulando para que a gravidade o puxe para baixo??
vitorfernandes13- Games Ranking :
Notas recebidas : C
Data de inscrição : 11/01/2014
Reputação : 11
Número de Mensagens : 284
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» [Video aula]Criando menu pause[tutorial]
» Tutorial - Online -Aula 1
» Tutorial - Online -Aula 2
» [vídeo-aula]Tutorial de Introdução Pratica (o "velho" Game of fruit)
» [ Video Aula / PDF ]Tutorial MMORPG
» Tutorial - Online -Aula 1
» Tutorial - Online -Aula 2
» [vídeo-aula]Tutorial de Introdução Pratica (o "velho" Game of fruit)
» [ Video Aula / PDF ]Tutorial MMORPG
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos