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] Criando um Pause Personalizado
3 participantes
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
[Tutorial] Criando um Pause Personalizado
Objetivo: Criar um Pause com um draw_text, ou com um draw_sprite. Introdução aos comandos para criar Caixas de Texto atravéz de draw.
Dificuldade: Fácil
Ferramenta: GM7 PRO
Nesse tuto criaremos um simples pause, mas com o sprite que quisermos
E também você conhecerá os comandos que usaremos no meu próximo Tutorial, sobre criar Caixas de Texto/Diálogos com um script de draw.
MATERIAL:
Nomeie o Sprite de s_pause.
Um sprite de pause. Eu estou usando esse no jogo que estou desenvolvendo:
(Para o Pause ficar bonitinho no jogo, apenas centralize a Origin no meio do Triangulo)
MODO DE PREPARO:
Crie um Obj chamado obj_pause, coloque nele um Evento Key Press (Enter), dentro coloque um Piece of Code com o seguinte código.
Versão com Sprite:
Agora crie um Script, nomei-o scr_pause e coloque dentro dele:
A Explicação está toda no proprio código, qualquer dúvida dá um berro .
Versão só com Draw:
Primeiro crie uma Font, e chame-a fontpause. Escolha um tamanho bem grande e uma fonte legal.
Uma coisa importante sobre Draw:
Perceba que duas vezes Configuramos a cor...
"Por que?"
Porque um script de Draw segue a Ordem que vc coloca as coisas, ou seja, as primeiras linhas que vc coloca, sejam sprites, cores ou fontes, serão as primeiras a ser executadas, e o que estiver 'embaixo' vai ser desenhado por cima do anterior.
Para ver isso acontecer experimente trocar os Valores dos draw_set_color que usamos. Coloque c_black no primeiro e c_white no segundo.
Para finalizar crie uma room com o tamanho 640x480 e coloque o obj_pause nela. Rode o jogo e veja o que acontece.
É interessante fazer os dois tipos, com draw_sprite, e o draw mais complexo.
Sei que o pause com draw sem sprite deve ter ficado bem esquisito aí, mas é só questão de arrumar as coordenadas do draw_rectangle e o tamanho da fonte.
Enfim, explorem o draw, é um evento muito legal de se usar quando começa a pegar as manhas. E também é vantajoso saber usá-lo porque além de existir mtos tipos de draw no GM, outras funções como collision_rectangle seguem os mesmo principios.
Eu odiava usar draw, pq achava mto complicado, mas quebrei a cabeça fazendo testes e aprendendo, hoje gosto muito mais usá-lo. Dá uma grande liberdade.
É isso galera, se tiver algum erro no tuto me avisem que corrijo aqui.
Próximo Tutorial: Um Único Script para Todos Diálogos do Jogo
Abração!
DHarrison.
Dificuldade: Fácil
Ferramenta: GM7 PRO
Nesse tuto criaremos um simples pause, mas com o sprite que quisermos
E também você conhecerá os comandos que usaremos no meu próximo Tutorial, sobre criar Caixas de Texto/Diálogos com um script de draw.
MATERIAL:
Nomeie o Sprite de s_pause.
Um sprite de pause. Eu estou usando esse no jogo que estou desenvolvendo:
(Para o Pause ficar bonitinho no jogo, apenas centralize a Origin no meio do Triangulo)
- Spoiler:
- Sim, é um jogo fan-game do Zelda.
Nesse jogo você será Elkin, um estrangeiro que chega em Hyrule para combater o mal até a chegada do Heroi do Tempo (Link).
To desenvolvendo a engine, conforme for aprendendo coisas novas nela, postarei.
MODO DE PREPARO:
Crie um Obj chamado obj_pause, coloque nele um Evento Key Press (Enter), dentro coloque um Piece of Code com o seguinte código.
- Código:
{
scr_pause()
}
Versão com Sprite:
Agora crie um Script, nomei-o scr_pause e coloque dentro dele:
- Código:
{
draw_sprite(s_pause,0,320,240) //Desenhar_Sprite(s_pause,subimagem 0, x=320pxl, y=240pxl) - Desenha o Pause no meio da tela.
screen_refresh(); //Redesenha a tela usando a imagem atual da room, ou seja, "congela a tela".
keyboard_wait(); //Faz o jogo esperar até que o jogador clique em alguma tecla. Abaixo declaramos qual tecla deve ser pressionada.
{
if (keyboard_lastkey == vk_enter) //Se a ultima tecla que foi usada (enter), ser apertada novamente...
{
io_clear(); //Limpa os estados do Teclado e Mouse, é esse comando que irá fazer o jogo 'descongelar'
}
else
{
scr_pause(); //SE NÃO aperta Enter dinovo, o script continua sendo executado. Assim o jogo continua pausado.
}
}
}
A Explicação está toda no proprio código, qualquer dúvida dá um berro .
Versão só com Draw:
Primeiro crie uma Font, e chame-a fontpause. Escolha um tamanho bem grande e uma fonte legal.
- Código:
{
draw_set_color(c_white) //Configura a cor do Draw para Branco
draw_rectangle(240,220,400,280,false) //Desenha o retangulo, onde: x1 (posição x inicial); y1 (posição y inical); x2 (final); y2 (final). O False no fim é pra vc escolher se vai ser Só Linha, ou Com Preenchimento. Como queremos Com Preenchimento, colocamos False.
draw_set_color(c_black) //Configura a cor do Draw para Preto
draw_set_halign(1) //Alinha(align) o Draw horizontalmente(h) no centro(1)
draw_set_font(fontpause) //Configura a Fonte para a fontpause que criamos.
draw_text(320,240,"JOGO PAUSADO") //Desenhar Texto.
screen_refresh();
keyboard_wait();
{
if (keyboard_lastkey == vk_enter)
{
io_clear();
}
else
{
scr_pause();
}
}
}
Uma coisa importante sobre Draw:
Perceba que duas vezes Configuramos a cor...
"Por que?"
Porque um script de Draw segue a Ordem que vc coloca as coisas, ou seja, as primeiras linhas que vc coloca, sejam sprites, cores ou fontes, serão as primeiras a ser executadas, e o que estiver 'embaixo' vai ser desenhado por cima do anterior.
Para ver isso acontecer experimente trocar os Valores dos draw_set_color que usamos. Coloque c_black no primeiro e c_white no segundo.
Para finalizar crie uma room com o tamanho 640x480 e coloque o obj_pause nela. Rode o jogo e veja o que acontece.
É interessante fazer os dois tipos, com draw_sprite, e o draw mais complexo.
Sei que o pause com draw sem sprite deve ter ficado bem esquisito aí, mas é só questão de arrumar as coordenadas do draw_rectangle e o tamanho da fonte.
Enfim, explorem o draw, é um evento muito legal de se usar quando começa a pegar as manhas. E também é vantajoso saber usá-lo porque além de existir mtos tipos de draw no GM, outras funções como collision_rectangle seguem os mesmo principios.
Eu odiava usar draw, pq achava mto complicado, mas quebrei a cabeça fazendo testes e aprendendo, hoje gosto muito mais usá-lo. Dá uma grande liberdade.
É isso galera, se tiver algum erro no tuto me avisem que corrijo aqui.
Próximo Tutorial: Um Único Script para Todos Diálogos do Jogo
Abração!
DHarrison.
Última edição por dharrison em Seg 22 Nov 2010, 20:36, editado 1 vez(es) (Motivo da edição : Explicando melhor o código)
dharrison- Games Ranking :
Notas recebidas : A - B
Data de inscrição : 04/02/2009
Reputação : 120
Número de Mensagens : 1363
Prêmios :
x 0 x 9 x 0
x 0 x 1 x 0
x 0 x 0 x 1
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 2.0
- C#
Re: [Tutorial] Criando um Pause Personalizado
Nao testei ainda cara
Mais parece ta legal
parabens
Mais parece ta legal
parabens
Luca$- Games Ranking :
Notas recebidas : D-C
Data de inscrição : 10/10/2010
Reputação : 1
Número de Mensagens : 582
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial] Criando um Pause Personalizado
Wow... It's a nice tutorial! Better than mine... Your tutorial teach how to make a professional pause, with a sprite, that turn into custom pause. Again, congratulations for you, [...] Brinks
Muito bom o tutorial! O seu tuto ensina um meio de fazer um pause profissional, que usando uma sprite, transforma ele num personalizado Mas,script para todos os diálogos no jogo? Seria uma show_message personalizado? Espero que sim
Atenção:
Este sistema gostaria de informar que o texto acima não foi escrito com o Google Tradutor, e sim pelo usuário, que é um estudante nato. A máquina não se responsabiliza por quaisquer danos morais causados ao usuário.
Hehe,abraços!
Muito bom o tutorial! O seu tuto ensina um meio de fazer um pause profissional, que usando uma sprite, transforma ele num personalizado Mas,script para todos os diálogos no jogo? Seria uma show_message personalizado? Espero que sim
Atenção:
Este sistema gostaria de informar que o texto acima não foi escrito com o Google Tradutor, e sim pelo usuário, que é um estudante nato. A máquina não se responsabiliza por quaisquer danos morais causados ao usuário.
Hehe,abraços!
Markituh- Games Ranking :
Data de inscrição : 11/10/2009
Reputação : 106
Número de Mensagens : 2184
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial] Criando um Pause Personalizado
Markituh
uhasuhasuhasuhaush
sussu, manjo ingless tbm ;)
Sobre o próximo tutorial, é um evento que usa os mesmo principios deste tutorial, mas adicionando vars globais e objs com parent.
to esfriando a cabeça um pouco, talvez nas proximas horas eu poste ele.
E com ele vou postar a engine junto. ( Sim! Dessa vez vai ter engine )
GMLucas
Vlw *-*
Se vc chegar a testá-lo, de um Edit e me diga se gostou
uhasuhasuhasuhaush
sussu, manjo ingless tbm ;)
Sobre o próximo tutorial, é um evento que usa os mesmo principios deste tutorial, mas adicionando vars globais e objs com parent.
to esfriando a cabeça um pouco, talvez nas proximas horas eu poste ele.
E com ele vou postar a engine junto. ( Sim! Dessa vez vai ter engine )
GMLucas
Vlw *-*
Se vc chegar a testá-lo, de um Edit e me diga se gostou
dharrison- Games Ranking :
Notas recebidas : A - B
Data de inscrição : 04/02/2009
Reputação : 120
Número de Mensagens : 1363
Prêmios :
x 0 x 9 x 0
x 0 x 1 x 0
x 0 x 0 x 1
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 2.0
- C#
Tópicos semelhantes
» [Video aula]Criando menu pause[tutorial]
» Vídeo-aula: Criando um programa personalizado no GM
» Vídeo-aula: Criando um pause básico
» Tutorial de Pause :D
» Tutorial: Fazendo um pause game Profissional
» Vídeo-aula: Criando um programa personalizado no GM
» Vídeo-aula: Criando um pause básico
» Tutorial de Pause :D
» Tutorial: Fazendo um pause game Profissional
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos