Entrar
Últimos assuntos
» Alguém aí quer um tutorial?por Raffxz Ontem à(s) 17:48
» [TUTORIAL][2D] Como Criar Exports Para o Tiled Map Editor
por TRFN Ontem à(s) 09:54
» [Vídeo] Tutorial jogo de plataforma completo com o GameMaker
por TRFN Ontem à(s) 09:52
» EvoluShip (DevLog)
por JOZ. Sex 05 Ago 2022, 21:57
» Aulas particulares. Alguém?
por Pit Bull Seg 01 Ago 2022, 15:41
» Ajuda menu interativo
por Y0hh Ter 26 Jul 2022, 15:43
» Dúvida de programação
por Y0hh Ter 26 Jul 2022, 15:39
» como fazer parguntas e aceitar respostas escritas pelo player
por Y0hh Ter 26 Jul 2022, 15:36
» Block Room
por Joton Dom 24 Jul 2022, 20:29
» Beyond the Storm - Um remake não-oficial de Tyrian! (Devlog)
por leo150250 Qui 21 Jul 2022, 13:35
» [Mini Evento] Mini Jam Musical #2
por Diemorth Ter 21 Jun 2022, 15:29
» Moth-Kubit Grimes RPG 2D
por theguitarmester Ter 21 Jun 2022, 11:11
» Kingdom And Slaves
por theguitarmester Seg 20 Jun 2022, 11:40
» Como fazer o texto no draw_gui seguir o player pela room?
por Willy Ter 07 Jun 2022, 14:09
» Achar o valor da variável de uma instância
por Asutsuo Qui 26 Maio 2022, 16:17
» Prof Hero - Animação 2D
por efraim leonardo Qua 25 Maio 2022, 19:45
» grappling hook
por gabrielsantos Seg 23 Maio 2022, 22:37
» Endless Fire
por Wallace_ank Qui 12 Maio 2022, 14:08
» alguém entende movimento de nave ?
por chinogamo Sex 06 Maio 2022, 23:59
» [Tutorial] Básico ao avançado - Movimentação avançada 2D
por chinogamo Qua 04 Maio 2022, 18:44
» Criação de Game MMORPG
por GabrielXavier Qua 04 Maio 2022, 16:51
» tenho uma duvida
por chinogamo Dom 01 Maio 2022, 10:32
» [Mini Evento] Mini Jam de Arte #3
por Diemorth Dom 24 Abr 2022, 22:44
» Flupye Ranch (#LD50)
por JOZ. Sex 22 Abr 2022, 12:59
» [Mini Evento] Mini Jam de Roteiros #2
por Diemorth Seg 18 Abr 2022, 15:33
como fazer parguntas e aceitar respostas escritas pelo player
2 participantes
GMBR :: Ensine & Aprenda :: Perguntas e Respostas :: Game Maker :: GMS:Windows
Página 1 de 1
como fazer parguntas e aceitar respostas escritas pelo player
Olá, quero fazer um jogo onde o player tem o simples objetivo responder perguntas.
Ja vi algumas referencias porem geralmente cabe ao player escolher uma das opçoes ja dadas pelo jogo para passar a pergunta (como 2 botoes de sim ou não). Procuro saber se tem como fazer algo onde o player digite a resposta que ele quer, e o jogo detecte se esta certo ou errado.
vou citar um exemplo caso não deu pra entender:
o player tem que responder a pergunta "Cite um personagem de Star Wars" por exemplo, então o player digita um nome, e apenas se esse nome estiver no banco de palavras ele passa de fase.
Deu para compreender? Se alguem me puder ajudar falando uma ideia de comando que posso procurar mais a respeito de cada etapa, que saiba de um video que explique agradeço.
Ja vi algumas referencias porem geralmente cabe ao player escolher uma das opçoes ja dadas pelo jogo para passar a pergunta (como 2 botoes de sim ou não). Procuro saber se tem como fazer algo onde o player digite a resposta que ele quer, e o jogo detecte se esta certo ou errado.
vou citar um exemplo caso não deu pra entender:
o player tem que responder a pergunta "Cite um personagem de Star Wars" por exemplo, então o player digita um nome, e apenas se esse nome estiver no banco de palavras ele passa de fase.
Deu para compreender? Se alguem me puder ajudar falando uma ideia de comando que posso procurar mais a respeito de cada etapa, que saiba de um video que explique agradeço.
Drax_G- Games Ranking :
Data de inscrição : 20/07/2022
Reputação : 0
Número de Mensagens : 1
Prêmios :x 0
x 0
x 0
x 0
x 0
x 0
x 0
x 0
x 0
Y0hh gosta desta mensagem
Re: como fazer parguntas e aceitar respostas escritas pelo player
Olá Drax_G, é uma pena que você teve que esperar alguns dias, mas de qualquer forma, consegui fazer funcionar aqui, fiquei 2 dias e vou explicar como e como fazer.
Primeiro Passo:
- Primeiro você começa a criar um Sprite, esse Sprite você vai desenvolver ou pegar na internet, mas precisa ser um TextBox, de preferência se você não precisar fazer isso, e coloque qualquer nome, mas eu vou colocar aqui como S_T, depois disso você cria outro sprite, que é o sprite do Botão de Enviar, você vai ver daqui alguns textos a frente pra que ele serve, e vou colocar como S_O.
Segundo Passo:
- Crie uma fonte, você pode colocar qualquer nome, no meu caso eu coloco F_1, não esqueça de adicionar como características, qualquer dúvida sobre isso eu respondo.
Terceiro Passo:
- Você cria uma TextBox, na pasta "Objects", e coloca o seu Sprite, depois crie outro objecto chamado Enter, o que seria esse objeto? Pra quando você for digitar o Nome do Personagem do Star Wars, você clicar nesse botão para que é possível ver se ele é um Personagem de Star Wars ou não.
- Depois, você cria um objeto, chamado "Resposta", ele vai ser o Objeto que vai dá a resposta de se ele é um Personagem de Star Wars ou não.
Quarto Passo(Programação):
- O Objeto TextBox, você vai criar um Create, e vai colocar esse código:
- Como você pode ver, vai está explicando o que cada Variável faz e sua função.
- Depois você cria o Step e coloca esse código:
Quinto Passo(Programação):
- Agora iremos para o objeto Enter, que como eu expliquei alguns textos atrás, irá servir com que quando o personagem manda mensagem, a mensagem é enviada e o banco de dados verifica se ele é um personagem de star wars ou não é. Agora chega de atrasos explicando e vou mostrar o Script.
- Agora iremos desenhar essa função na tela, usando esse seguinte Script:
Sexto Passo(Explicação + Programação):
- Agora iremos para a função o objeto Resposta, ele é bem simples, só vai desenhar na tela a resposta que ele adquiriu nos Scripts passado, começe criando um objeto "Draw":
Último Passo(Explicação + Colocar no Jogo):
- Pronto, terminamos todos os Scripts, agora você vai criar duas salas(tela), uma vai ser o player preenchendo as informações, nessa primeira sala você vai colocar os objetos O_TB e o O_O, não esqueça de organizar
- Na outra sala(tela), você só vai colocar o objeto O_A(que é o objeto de resposta), e pronto, quando terminar tudo, é só ser feliz e ver o Script funcionando, ele é código aberto, você pode alterar o jeito que quiser e como você quer, não necessariamente você precisa usar para isso, pode ser pra outras coisas, como criar uma I.A e etc. Espero que eu tenha ajudado.
Arquivo:
https://www.mediafire.com/file/8jukpt80bc2bsvi/T33762.gmz/file
- Estou disponibilizando esse arquivo pra caso dê algum erro, você use o arquivo como exemplo pra entender melhor.
Primeiro Passo:
- Primeiro você começa a criar um Sprite, esse Sprite você vai desenvolver ou pegar na internet, mas precisa ser um TextBox, de preferência se você não precisar fazer isso, e coloque qualquer nome, mas eu vou colocar aqui como S_T, depois disso você cria outro sprite, que é o sprite do Botão de Enviar, você vai ver daqui alguns textos a frente pra que ele serve, e vou colocar como S_O.
Segundo Passo:
- Crie uma fonte, você pode colocar qualquer nome, no meu caso eu coloco F_1, não esqueça de adicionar como características, qualquer dúvida sobre isso eu respondo.
Terceiro Passo:
- Você cria uma TextBox, na pasta "Objects", e coloca o seu Sprite, depois crie outro objecto chamado Enter, o que seria esse objeto? Pra quando você for digitar o Nome do Personagem do Star Wars, você clicar nesse botão para que é possível ver se ele é um Personagem de Star Wars ou não.
- Depois, você cria um objeto, chamado "Resposta", ele vai ser o Objeto que vai dá a resposta de se ele é um Personagem de Star Wars ou não.
Quarto Passo(Programação):
- O Objeto TextBox, você vai criar um Create, e vai colocar esse código:
- Código:
// Variáveis
// Feito por Yori e Seb.
delete_timer = 2; // Fazer com que o texto seja apagável.
text = ""; // A variável para armazenar o texto para que seja possível digitar.
global.verification = "not"; // A variável que verifica se o nome do Personagem é de Star Wars.
// Termino.
- Como você pode ver, vai está explicando o que cada Variável faz e sua função.
- Depois você cria o Step e coloca esse código:
- Código:
// Primeiro Passo
if(keyboard_check(vk_anykey) and string_length(text) < 20) { // Verificar se alguma tecla foi pressionadoe também o limite do texto.
text = text+string(keyboard_string) // Texto.
keyboard_string = "";
}
// Line 7 and 11 faz com o que verifique se a tecla de apagar foi apertada, se a tecla for apertada, apagar mensagem.
if(keyboard_check_pressed(vk_backspace)) {
text = string_delete(text, string_length(text), 1);
keyboard_string = "";
delete_timer = -4;
}
// Lidar com a atualização do temporizador:
if(delete_timer != 2) {
delete_timer ++;
}
// Banco De Dados de Nomes
// Explicação: Esse é o banco de dados, aonde armazena os nomes dos personagem de Star Wars
// Se você quiser, por opção, pode adicionar mais personagens.
if text = "Luke Skywalker" and global.verification = "not" {
global.verification = "yes";
}
if text = "luke skywalker" and global.verification = "not" {
global.verification = "yes";
}
if text = "Luke SkyWalker" and global.verification = "not" {
global.verification = "yes";
}
if text = "Princesa Leia" and global.verification = "not" {
global.verification = "yes";
}
if text = "princesa leia" and global.verification = "not" {
global.verification = "yes";
}
if text = "Darth Vader" and global.verification = "not" {
global.verification = "yes";
}
if text = "darth vader" and global.verification = "not" {
global.verification = "yes";
}
if text = "R2-D2" and global.verification = "not" {
global.verification = "yes";
}
if text = "r2-d2" and global.verification = "not" {
global.verification = "yes";
}
// Termino.
- Código:
// Desenho.
draw_self(); // Desenhar a Caixa de Texto.
draw_set_color(c_white) // A cor do texto.
draw_set_halign(fa_center);
draw_set_valign(fa_middle);
// Line 4 and 5: O texto ficar no centro da tela.
draw_set_font(O_TB); // Fonte.
draw_text(x, y, text); // Desenhar o Texto.
draw_text(x, y-30, "Cite um personagem de Star Wars:"); // Desenhar o Texto Pergunta.
// Termino.
Quinto Passo(Programação):
- Agora iremos para o objeto Enter, que como eu expliquei alguns textos atrás, irá servir com que quando o personagem manda mensagem, a mensagem é enviada e o banco de dados verifica se ele é um personagem de star wars ou não é. Agora chega de atrasos explicando e vou mostrar o Script.
- Código:
// Mouse Clicar no Botão
global.answer = O_TB.text; // Verificar a resposta.
room_goto_next(); // Ir para a cena da Resposta.
// Termino.
- Agora iremos desenhar essa função na tela, usando esse seguinte Script:
- Código:
// Desenho.
draw_self(); // Desenhar o Botão.
draw_set_color(c_white) // A cor do texto.
draw_set_halign(fa_center);
draw_set_valign(fa_middle);
// Line 4 and 5: O texto ficar no centro da tela.
draw_set_font(O_TB); // Fonte.
draw_text(x, y, "Enviar"); // Desenhar o Texto.
// Termino.
Sexto Passo(Explicação + Programação):
- Agora iremos para a função o objeto Resposta, ele é bem simples, só vai desenhar na tela a resposta que ele adquiriu nos Scripts passado, começe criando um objeto "Draw":
- Código:
// Desenho.
draw_set_color(c_white) // A cor do texto.
draw_set_halign(fa_center);
draw_set_valign(fa_middle);
// Line 4 and 5: O texto ficar no centro da tela.
draw_set_font(O_TB); // Fonte.
if global.verification = "yes" { // Esse Script irá dá a Resposta, se ele é um dos Personagem de Star Wars.
draw_text(x, y, "O(a) Grande e Velho(a), " + global.answer); // Desenhar o Texto e a resposta.
}
if global.verification = "not" { // Esse Script irá dá a resposta, que ele não é um personagem de Star Wars.
draw_text(x, y, "Você se confundiu, esse personagem não é de Star Wars"); // Desenhar o Texto e a resposta.
}
// Termino.
Último Passo(Explicação + Colocar no Jogo):
- Pronto, terminamos todos os Scripts, agora você vai criar duas salas(tela), uma vai ser o player preenchendo as informações, nessa primeira sala você vai colocar os objetos O_TB e o O_O, não esqueça de organizar

- Na outra sala(tela), você só vai colocar o objeto O_A(que é o objeto de resposta), e pronto, quando terminar tudo, é só ser feliz e ver o Script funcionando, ele é código aberto, você pode alterar o jeito que quiser e como você quer, não necessariamente você precisa usar para isso, pode ser pra outras coisas, como criar uma I.A e etc. Espero que eu tenha ajudado.
Arquivo:
https://www.mediafire.com/file/8jukpt80bc2bsvi/T33762.gmz/file
- Estou disponibilizando esse arquivo pra caso dê algum erro, você use o arquivo como exemplo pra entender melhor.
Y0hh- Data de inscrição : 25/07/2022
Reputação : 8
Número de Mensagens : 3
Prêmios :x 0
x 0
x 0
x 0
x 0
x 0
x 0
x 0
x 0
Plataformas :- Game Maker Studio 1.4
- Unity
- Javascript
- Outros
Super Games, theguitarmester, Drax_G e Y0hh gostam desta mensagem

» como fazer o player andar pelo mause
» Como Fazer o jogo 3D ou a camera girar pelo player?
» por um akaso tem como dividir a tela para 2 players so q se o player 1 passar pelo portal e ir para a proxima tela o player 2 nao ir a nao ser q ele passe pelo portal
» Como fazer o player fazer o view 'andar' antes que o player chegue no canto?
» Fazer uma barra do lado e ela ficar sempre lá sendo que a tela é seguida pelo player
» Como Fazer o jogo 3D ou a camera girar pelo player?
» por um akaso tem como dividir a tela para 2 players so q se o player 1 passar pelo portal e ir para a proxima tela o player 2 nao ir a nao ser q ele passe pelo portal
» Como fazer o player fazer o view 'andar' antes que o player chegue no canto?
» Fazer uma barra do lado e ela ficar sempre lá sendo que a tela é seguida pelo player
GMBR :: Ensine & Aprenda :: Perguntas e Respostas :: Game Maker :: GMS:Windows
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|