Sistema de Trocar Teclas do jogo...

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

Qualidade Sistema de Trocar Teclas do jogo...

Mensagem por joorock12 em Dom 23 Maio 2010, 14:28

Sistema de Trocar Teclas

Todos nos estamos cansados de ver em todos os jogos sistemas de trocar teclas padrões para teclas de nossa preferencia. Hoje eu vou ensinar a vocês como faze - la em seus jogos...

1º Usaremos uns scripts pré definidos para que não precisaremos repetir codigos...
Aqui está Button Control...

2º Ja com seu Game Maker aberto importe o Script Button Control
Script -> Import Script


3º Agora Crie um Objeto Chamado Controle e crie 4 eventos(Create, Step, Game End,Draw)

4ª No Evento Create, Adicione um "Execute Code":
Nele escreva o Seguinte codigo
Código:

button_init();//que irá iniciar os scripts Button Control
button_module_load(true,true,true);// carrega os modulos das teclas(botões)
global.cima = 0;// Que será nossa varieval da tecla de subir
global.baixo = 0;//Será a de descer
global.esquerda = 0;//que será a de ir para esquerda
global.direita = 0;//seria a tecla para direita
listacar = " "; //que será usada pra que não possa usar o mesmo botão na mesma ação

texto[0] = "Digite a Tecla que para cima"; // Seram as perguntas para configurar as teclas
texto[1] = "Digite a tecla para Baixo";
texto[2] = "Digite a tecla para esquerda";
texto[3] = "Digite a tecla para direita";
texto[4] = "Aperte Enter para Prosseguir";
modo = 0;// sera o numero de perguntas...mas pra frente veremos melhor a explicação...

5ª: No evento de STEP coloque o seguinte codigo
Código:

if button_check_pressed(bt_any) // que seria a mesma coisa de if keyboard_check_pressed(vk_anykey)
if string_count(" " + string(button_key[1]) + " ",listacar) = 0 // se o botão nao estiver na listacar(lista de caracteres)
if modo !=4 // se a perguntar não for a 4
{
 switch(modo)
 {
 case 0: global.cima    = button_key[1]; break; //Aqui transformamos a o valor da variavel na tecla
 case 1: global.baixo    = button_key[1]; break;
 case 2: global.esquerda = button_key[1]; break;
 case 3: global.direita  = button_key[1]; break;
 }
 listacar += string(button_key[1]) + " "; //atualiza a lista de caracteres
 modo +=1; //coloca mais modos
 exit;
}

if modo = 4 and button_check_pressed(vk_enter)// se as perguntas tiverem chegado a 4 e apertar Enter
{
  ini_open('Controles.ini')//Abre ou Cria o arquivo de configuração dos controles
  ini_write_real('Player 1','cima',global.cima);//Aqui grava no ini a tecla
  ini_write_real('Player 1','baixo',global.baixo);
  ini_write_real('Player 1','esquerda',global.esquerda);
  ini_write_real('Player 1','direita',global.direita);
  button_module_unload(true,false,true);//desliga os modulos das teclas..
  room_goto(room_inicial)//Aqui vai voltar para room inicial
}

6ª: Agora no Evento Game End crie outro Execute Code
Código:

button_module_unload(true,true,true);//aqui desliga totalmente os modulos ao final do jogo

7ª: No evento Draw faremos a parte grafica dos codigos:
Adicione outro Execute Code:
Código:

draw_text(0,36,  "Cima: " + button_get_keyname(global.cima)
              +"#Baixo: " + button_get_keyname(global.baixo)
                +"#Esquerda: " + button_get_keyname(global.esquerda)
              +"#Direita: " + button_get_keyname(global.direita));//aqui Escreveremos as teclas precionadas
draw_text(0,0,text[modo]);//Aqui será escrito as perguntas

Pronto aqui terminamos a edição das teclas agora vamos para a interação com o personagem

Aqui eu criei um personagem simples só para andar...
Adicione no Evento STEP o seguinte codigo
Código:

if keyboard_check(global.esquerda){ x -= 5;}//ou apenas substitua suas teclas pelas variaveis global.esquerda, global.direita etc..
if keyboard_check(global.cima) {y -= 5;}
if keyboard_check(global.direita) {x +=5;}
if keyboard_check(global.baixo) {y +=5;}
Agora no seu Menu tera que ter um botão de Jogar certo?
Crie o e coloque no evento Create o seguite codigo:
Código:

if !file_exists('Controles.ini')//caso não tenha nenhum arquivo de configuração ele cria
{
 ini_open('Controles.ini');
 ini_section_exists('Player 1');
 ini_key_exists('Player 1','cima');
 ini_key_exists('Player 1','baixo');
 ini_key_exists('Player 1','esquerda');
 ini_key_exists('Player 1','direita');
 ini_write_real('Player 1','cima',38);//o 38 é numero que equivale a tecla VK_UP
 ini_write_real('Player 1','baixo',40);
 ini_write_real('Player 1','esquerda',37);
 ini_write_real('Player 1','direita',39);
 ini_close();
}
ini_open('Controles.ini');
global.cima = ini_read_real('Player 1','cima','Up');//aqui carregaremos as Configurações salvas
global.baixo = ini_read_real('Player 1','baixo','Down');
global.esquerda = ini_read_real('Player 1','esquerda','Left');
global.direita = ini_read_real('Player 1','direita','Right');
ini_close();
Agora crie uma nele o Evento de Clicar se desejar e bote para ir na room do jogo...
Crie outro botão que vá para a Room de editar os controles...
Após crie as Três Rooms
room_inicial Onde será o menu
room_controles onde será a de configuração
room_jogar que será o jogo em si
Na Room Inicial bote os Botões, Jogar e Configurar
Na Room Controles bote o Objeto Controle
Na Room jogar bote o Player...
Pronto fizemos um sistema de configuração de teclas.. Espero que tenham gostado e te ajudado...
Vou botar o que fiz aqui para que não tenham nenhuma duvida:
Sistema de controle.gmk
Obrigado...
Ass.Ownh

joorock12

Ranking : Nota E
Número de Mensagens : 154
Idade : 20
Data de inscrição : 26/01/2010
Notas recebidas : E
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

Qualidade Re: Sistema de Trocar Teclas do jogo...

Mensagem por Nicolas em Dom 23 Maio 2010, 14:30

Hey Bom Tuto Cara Very Happy
Vlw Very Happy

Nicolas

Número de Mensagens : 492
Idade : 17
Data de inscrição : 23/02/2010
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Qualidade Re: Sistema de Trocar Teclas do jogo...

Mensagem por SuperHacker em Sex 04 Jun 2010, 14:42

gracias man.
vc pode fazer um sobre
como mudar idiomas e músicas?

SuperHacker

Número de Mensagens : 63
Idade : 21
Data de inscrição : 19/05/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

Qualidade Re: Sistema de Trocar Teclas do jogo...

Mensagem por afonso_silva em Qui 17 Jun 2010, 16:10

tá fixe o tuto. parabens

afonso_silva

Número de Mensagens : 147
Idade : 20
Data de inscrição : 29/05/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

Qualidade Re: Sistema de Trocar Teclas do jogo...

Mensagem por Conteúdo patrocinado Hoje à(s) 08:35


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