Entrar
Últimos assuntos
» Problema ao entrar por uma porta e voltar por elapor aminaro Seg 06 maio 2024, 10:08
» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ter 30 Abr 2024, 11:43
» Colisões não funcionando
por theguitarmester Ter 30 Abr 2024, 10:16
» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex 26 Abr 2024, 16:45
» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18
» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30
» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07
» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45
» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51
» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31
» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11
» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18
» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34
» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13
» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18
» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12
» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02
» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55
» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42
» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56
» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21
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 : 13
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
Tópicos semelhantes
» 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
|
|