Tutorial Menu e Submenu em gml

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

Tutorial Menu e Submenu em gml

Mensagem por LeeroyFan em Sab 06 Mar 2010, 12:58

-Tutorial: Menu em texto e submenu-

Versão do Game Maker necessária: LITE.
Nível de dificuldade:Médio

Começando:
Primeiro abra sua versão do Game maker (pode ser qualquer uma, esse exemplo foi feito com a versão 7.0)


Crie uma room, um objeto e um script em seu projeto.
Renomeie para que fiquem desse jeito:
Objeto >> obj_menu
script>> scr_InitMenu
Agora coloque o obj_menu em qualquer lugar de sua room.

No obj_menu, coloque o seguinte código no evento “Create”
Código:

{
  scr_InitMenu();
}

Isso chamará o scr_InitMenu, o que ainda não faz nada.
Ok, vamos começar a programar os comandos básicos do menu, como: Começar o jogo; Opções; Instruções; Sair;
Você pode adicionar mais opções se você precisar, mas essa são as que vamos usar agora.

No script scr_InitMenu, coloque o seguinte código:
Código:

{
  menuSelected = 1;
  menuPage = 0;

  menuText[0,0] = 4;
  menuText[0,1] = "Start Game"
  menuText[0,2] = "Options"
  menuText[0,3] = "Instructions"
  menuText[0,4] = "Quit Game"
 
  menuText[1,0] = 3
  menuText[1,1] = "World 1"
  menuText[1,2] = "World 2"
  menuText[1,3] = "Back"
}

Você deve ter percebido que “menuText[0]=4;”. Isso é o número de opções que o menu terá.
A “menuSelected” é a variável que usaremos para saber qual opção está selecionada.
Abra o obj_Menu e adicione um evento Draw, nele, coloque:

Código:

{
  for (i = 1; i <= menuText[menuPage,0]; i+=1) {
    if (menuSelected = i) { draw_set_color(c_red); } else { draw_set_color(c_black); }
    draw_text(x,y+(i*16)-16,menuText[menuPage,i]);
  }
}
Esta é a posição do menu. Ela depende de onde você colocou o obj_Menu (aqui foi 0,0).

Agora vamos fazer com que possamos navegar no menu. Usaremos as teclas : Cima; Baixo.

No obj_InitMenu, adicione o press up, e coloque o código:
Código:

{
  menuSelected -=1;
  if (menuSelected < 1) { menuSelected = menuText[menuPage,0]; }
}

E no press down, coloque o código:
Código:

{
  menuSelected +=1;
  if (menuSelected > menuText[menuPage,0]) { menuSelected = 1; }
}

Se você testar agora, poderá se mover entre as opções usando as setas.
Mas agora precisamos de alguma tecla para selecionar a opção desejada, por isso, adicione um evento press 'Enter' e coloque o seguinte código:
Código:

{
  switch(menuPage) {
    case 0: // Main Menu
      if (menuSelected = 1) { menuPage = 1; menuSelected = 1; } // Start Game
      if (menuSelected = 2) { show_message("Options"); } // Options
      if (menuSelected = 3) { show_message("Instructions"); } // Instructions
      if (menuSelected = 4) { show_message("Exit Game"); } // Exit Game
    break;
    case 1:  // Start Game menu
      if (menuSelected = 1) { show_message("World 1"); } // World 1
      if (menuSelected = 2) { show_message("World 2"); } // World 2
      if (menuSelected = 3) { menuPage = 0; menuSelected = 1; } // Back
    break;
  }
}
Para deixar esse menu realmente útil, troque os “show_message()” por algum comando, por exemplo, troque o “show_message()” do “Sair” por “game_end()”

Conclusão
Espero que você tenha aprendido um pouco mais sobre gml com esse tutorial!

Traduzido e adaptado por LeeroyFan
Tutorial original feito por Chronic (game maker community)

Exemplos (estão em inglês)
Menu com submenu


Última edição por LeeroyFan em Qua 27 Out 2010, 18:14, editado 2 vez(es) (Razão : Tava faltando informação do cabeçalho)

LeeroyFan

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

http://www.drivingtokashmir.blogspot.com

Voltar ao Topo Ir em baixo

Re: Tutorial Menu e Submenu em gml

Mensagem por ricaun em Sab 06 Mar 2010, 15:19

Que menu show, gostei já que usa array 2d bem simples mesmo. Agora já sei como fazer um menu, só falta o jogo agora.

LeeroyFan valeu por disponibilizar-lo. Te....

ricaun

Número de Mensagens : 169
Idade : 27
Data de inscrição : 23/09/2008
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Tutorial Menu e Submenu em gml

Mensagem por Kronos em Qui 11 Mar 2010, 14:31

Valew! Cara!
Sempre quis saber como se faz uma menu com GML.
Já tinha achado outras engines e tutorias.
Mais essa e concertesa a mais explicada entre todas.

Kronos

Número de Mensagens : 112
Idade : 20
Data de inscrição : 10/02/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 Menu e Submenu em gml

Mensagem por Moreno em Qui 15 Jul 2010, 20:11

Bem documentado, esse tuto.
Vou usar este exemplo em meu projeto (devidamente adaptado, claro).
Muito obrigado msmo pelas explicações bem dadas.

Moreno

Número de Mensagens : 15
Idade : 37
Data de inscrição : 15/07/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 Menu e Submenu em gml

Mensagem por correiajoao em Sex 16 Jul 2010, 05:55

Moreno escreveu:Bem documentado, esse tuto.
Vou usar este exemplo em meu projeto (devidamente adaptado, claro).
Muito obrigado msmo pelas explicações bem dadas.

eu tbm, tá bem legal esse tuto!!

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 Menu e Submenu em gml

Mensagem por Salathiel em Sex 16 Jul 2010, 09:56

Parabens.Tuto perfeito.
Eu ja tentei fazer varios menus controlados por setas,ja baixei varias engines, mais seu tuto foi o que ajudou mais.

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 Menu e Submenu em gml

Mensagem por Convidad em Sex 16 Jul 2010, 12:06

meneiro este menu Very Happy

Convidad
Convidado


Voltar ao Topo Ir em baixo

Re: Tutorial Menu e Submenu em gml

Mensagem por LeandroDaher em Dom 18 Jul 2010, 01:49

MUINTO BOM CARA!ISTO PODE SER MUINTO ÚTIL A TODOS FLWs.

LeandroDaher

Número de Mensagens : 357
Idade : 20
Data de inscrição : 13/05/2010
Reputação : 3
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 Menu e Submenu em gml

Mensagem por Super Mario Bros em Ter 27 Jul 2010, 12:53

Dá erro quando troca o show_message() pelo game-end()

Super Mario Bros

Número de Mensagens : 13
Data de inscrição : 18/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 Menu e Submenu em gml

Mensagem por OverClock26 em Qui 02 Set 2010, 18:34

Me ajudem,como ponho o script no obj?
Plz help.
Sou novato.

OverClock26

Número de Mensagens : 12
Idade : 26
Data de inscrição : 29/05/2010
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Tutorial Menu e Submenu em gml

Mensagem por Shadow10 em Qua 17 Nov 2010, 00:26

nervoso Caras! Eu não conseguiria dormir sem fazer o "Press Up" ir do "menuSelected = 1" pro "menuSelected = 4". É que eu tenho pouquissíma experiência com "Scripts" e acabei criando esse aqui:

{
menuSelected -=1;
if menuSelected == 0 menuSelected = +4;
}

Coloque o código acima no "PressUp" e quando ele estiver no "Satart Game" ele vai passar pro "Quit Game" pois do jeito que ele encinou aí no topo se continuar pressionado pra cima, o selecionado some yes .
Mas é bom a gente as vezes bater cabeça e descobrir esses tipos de funções investigador .
Parabéns pelo menu blz .

Shadow10

Ranking : Nota C
Número de Mensagens : 429
Data de inscrição : 07/11/2010
Notas recebidas : C
Reputação : 19
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 Menu e Submenu em gml

Mensagem por Conteúdo patrocinado Hoje à(s) 06:30


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