Tutorial de Pause :D

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

O que vocês acharam?

73% 73% 
[ 19 ]
15% 15% 
[ 4 ]
12% 12% 
[ 3 ]
 
Total dos votos : 26

Tutorial de Pause :D

Mensagem por bootzin em Dom 14 Mar 2010, 16:56

Olá pessoal, este é o meu primeiro tutorial e nele vou ensinar a fazer um pause game com 4 funções:Resumir o jogo, Salvar, Reiniciar a room e sair do jogo Very Happy
Dificuldade: intermediária
Versão do GM: Eu fiz em GM8 Pro mas acho que da pra ser lite

Então... Mãos a obra Very Happy

Primeiramente crie um objeto chamado objPause e marque como persistent, depois desmarque a opção visível coloque no evento Create:
Código:
global.pause=false //Identifica se o pause está ativo ou não

Depois crie um evento de tecla pressionada('P' por exemplo) e coloque:
Código:
if global.pause=false //Verifica se não está pausado
{global.pause=true} //Pausa o jogo
{if global.pause=true //verifica se está pausado
{instance_create(view_xview,view_yview,objPause_menu)} //cria o menu de pause
}

Depois disso, crie um objeto objPause_menu e coloque uma sprite de um menu (no meu caso eu coloquei uma imagem com quatro subimagens , cada subimagem 'iluminando' uma opção diferente - aqui tá o link da
imagem:[url=http://adf.ly/246619/http://www.4shared.com/file/YT5cyoiH/Pause_menu.html ]4shared.com/file/YT5cyoiH/Pause_menu.html [/url] - ) depois disso coloque no evento Create :
Código:
image_index=0 // define a subimagem
image_speed=0 //define a velocidade de mudance das subimagens(no caso nós iremos mudá-la com as setas como veremos a seguir)

Agor crie um evento Step e coloque:
Código:
{if global.pause = true
{{instance_deactivate_all(objPause_menu)} //desativa tudo menos o menu de pause

if image_index=0 //se a subimagem for a de resumir o jogo
{if keyboard_check_pressed(vk_enter) //e a tecla 'enter' for pressionada
{instance_activate_all() //ativar tudo
instance_destroy()}
else if !keyboard_check_pressed(vk_enter)
{exit}
}

if image_index=1 // se a subimagem for a de reiniciar a room
{if keyboard_check_pressed(vk_enter) // e a tecla 'enter' for pressionada
room_restart() // reiniciar a room
}

if image_index=2 // se a subimagem for a de salvar
{if keyboard_check_pressed(vk_enter) // e a tecla 'enter for pressionada
{//Abre janela para salvar
save_game = "";
save_game = get_save_filename("Jogos salvos (*.sav)|*.sav", "");
//checa se pressionou cancelar
if !(save_game = "")
{
//checa se o arquivo termina com "*.sav":
if (string_copy(save_game, string_length(save_game) - 3, 4) != ".sav")
{
//adiciona ".gam" no arquivo que foi salvo
save_game = save_game + ".sav";
}
//salva o jogo
game_save(save_game);}
else {exit}
}}

if image_index=3 // se a subimagem for a de sair do jogo
{if keyboard_check_pressed(vk_enter) // e a tecla enter for pressionada
game_end() // sair do jogo
}}
else if global.pause = false // lembra que no começo checamos se estava pausado? agora checamos se não está pausado
{instance_activate_all() }} // se não estiver pausado ativamos tudo :D

Após ter colocado esses códigos acima vamos definir como controlaremos o menu. Para isso, adicione duas colheres de açúcar crie um evento de tecla pressionada(no meu caso usei a seta pra cima) e coloque o código:
Código:
image_index-=1
e outro evento de tecla pressionada(no meu caso seta pra baixo) e põe o código:
Código:
image_index+=1

E pronto!!!!! What a Face agora temos um pause menu xDxDxD lol! lol! lol! qualquer duvida é só perguntar Suspect Suspect

Até mais galera!!!! What a Face

--edit--
esqueci de dizer uma coisa: criem uma room e adicionem o objeto objPause (não precisa por o menu)
além disso na mesma room vocês terão de adicionar uma view para que o jogo saiba onde adicionar o menu ou então voces modificam a posição do menu para 0 e 0.

estou postando uma engine aki com esse tuto:
-----edit-----
[url=http://adf.ly/246619/http://www.4shared.com/file/5WiysITF/pause_Menu.html ]4shared.com/file/5WiysITF/pause_Menu.html [/url]
-----edit-----


Última edição por bootzin em Ter 20 Jul 2010, 12:10, editado 4 vez(es) (Razão : colocar engine de novo; colocar foto do menu para download)

bootzin

Número de Mensagens : 136
Idade : 21
Data de inscrição : 28/01/2010
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por Kyuubi em Seg 15 Mar 2010, 21:04

Nossa cara parabens ficou bom pra caramba!!!
flws!!!

Kyuubi

Número de Mensagens : 443
Idade : 23
Data de inscrição : 28/11/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://animeworldmugen.forumeiros.com/forum

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por JsLegnar em Dom 27 Jun 2010, 19:39

confused Pode me dizer como faço para colocar o menu no meio? confused

JsLegnar

Número de Mensagens : 4
Data de inscrição : 25/06/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por Salathiel em Dom 27 Jun 2010, 20:08

Cara não to conseguindo fazer o download da engine.
Tá dando erro.

Tenta hospedar em outro site.

Salathiel

Número de Mensagens : 346
Idade : 20
Data de inscrição : 29/05/2010
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://salathiel1337.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por Mentos e Coca-cola em Dom 04 Jul 2010, 10:50

Após ter colocado esses códigos acima vamos definir como controlaremos o menu. Para isso, adicione duas colheres de açúcar crie um evento de tecla pressionada(no meu caso usei a seta pra cima) e coloque o código:

kkkkkkkkkk
achei muito bom seu tuto, muito bem explicado, cara continua assim

Mentos e Coca-cola

Ranking : Nota D
Número de Mensagens : 627
Idade : 18
Data de inscrição : 30/06/2010
Notas recebidas : D
Reputação : 15
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por bootzin em Ter 20 Jul 2010, 00:14

ae pessoal
mto obrigado pelos elogios Happy
pretendo continuar fazendo tutos mas to meio sem tempo
desculpem a demora a responde mas eu tava viajando Happy


Pode me dizer como faço para colocar o menu no meio?

quanto à sua dúvida, em que sentido você quer dizer no "meio"?

bootzin

Número de Mensagens : 136
Idade : 21
Data de inscrição : 28/01/2010
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por Convidad em Ter 20 Jul 2010, 14:18

ta legal esta tutorial Very Happy

Convidad
Convidado


Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por Paulo Softwares em Ter 20 Jul 2010, 15:37

Otimo tutorial! creio que os novatos faram bom uso dele!

Paulo Softwares

Número de Mensagens : 24
Idade : 19
Data de inscrição : 19/07/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por bootzin em Ter 20 Jul 2010, 16:17

Mais uma vez, muito obrigado pessoal
e se houver qualquer dúvida pode perguntar que eu respondo^^
eu fiz esse tuto porque tava querendo sabe como pausar o jogo e nunca achava no fórum^^
otra coisa... nos resultados da pesquisa tá faltando 1% Suspect O.o

bootzin

Número de Mensagens : 136
Idade : 21
Data de inscrição : 28/01/2010
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por JsLegnar em Ter 20 Jul 2010, 18:49

bootzin, eu quero botar no centro da view.

JsLegnar

Número de Mensagens : 4
Data de inscrição : 25/06/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por bootzin em Ter 20 Jul 2010, 21:05

para colocar no centro da view troque o código de tecla pressionada desse:
Código:
if global.pause=false //Verifica se não está pausado
{global.pause=true} //Pausa o jogo
{if global.pause=true //verifica se está pausado
{instance_create(view_xview,view_yview,objPause_menu)} //cria o menu de pause
}
pra esse:
Código:
if global.pause=false //Verifica se não está pausado
{global.pause=true} //Pausa o jogo
{if global.pause=true //verifica se está pausado
{instance_create(view_xview/2,view_yview/2,objPause_menu)} //cria o menu de pause
}
não sei se vai dar certo porque não testei mas ve ai e me diz Happy

bootzin

Número de Mensagens : 136
Idade : 21
Data de inscrição : 28/01/2010
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por danrau1 em Ter 20 Jul 2010, 23:38

Muito bacana o tutorial, funcionou direitinho. Nota 9

Só tem um problema, que é o fato de ser difícil colocar a opção que você quer por ser muito rápido (pelo menos no meu).

Mas muito bom o tutorial, bem explicado. Parabéns

________________________________
Edit:

É só colocar em alarm[0]:
Código:
image_speed=0

e colocar nas funções das setas:
Código:
alarm[0]=1
________________________________

danrau1

Número de Mensagens : 39
Idade : 24
Data de inscrição : 07/06/2010
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: Tutorial de Pause :D

Mensagem por bootzin em Qua 21 Jul 2010, 00:02

Danrau...
eu não sei se vc reparou mas eu defini a image_speed =0 no evento create do objeto pause... isso é o suficiente para parar as rápida mudança de um item pro outro...
se vc olhar a engine verá que não tem problemas Happy
você deve ter esquecido de por aquela parte do script Happy
Caso não de certo mesmo assim, me diga novamente para que eu posso corrigir Happy

bootzin

Número de Mensagens : 136
Idade : 21
Data de inscrição : 28/01/2010
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por correiajoao em Qua 21 Jul 2010, 08:58

bom tuto! ESTE FÓRUM, ESTAVA COM FALTA DISTO
VALEW

correiajoao

Número de Mensagens : 353
Idade : 20
Data de inscrição : 05/06/2010
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: Tutorial de Pause :D

Mensagem por danrau1 em Qua 21 Jul 2010, 14:41

bootzin,

Eu chequei e está tudo de acordo com o tutorial.Mas já resolvi o problema mesmo, então tá tranquilo.

Falou

danrau1

Número de Mensagens : 39
Idade : 24
Data de inscrição : 07/06/2010
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: Tutorial de Pause :D

Mensagem por William Lima em Ter 04 Jan 2011, 19:17

muito bom seu tutorial. podia colocar o codigo de load game...

William Lima

Ranking : Nota A
Número de Mensagens : 426
Idade : 22
Data de inscrição : 10/09/2010
Notas recebidas : C+A+A+B+A
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 2
   : 0

http://williammustaffa.blogspot.com

Voltar ao Topo Ir em baixo

Re: Tutorial de Pause :D

Mensagem por juniorr452 em Dom 23 Jan 2011, 11:04

bootzin, esse tutorial ficou bom mesmo Very Happy
funcionou direitinho, ficou da hora, muito obrigado Very Happy

juniorr452

Número de Mensagens : 56
Idade : 18
Data de inscrição : 21/01/2011
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: Tutorial de Pause :D

Mensagem por Conteúdo patrocinado Hoje à(s) 17:19


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