Criação de um Bingo de Perguntas
4 participantes
Página 1 de 1
Criação de um Bingo de Perguntas
Estou iniciando meu projeto no Unity e gostaria de uma ajuda para criar um bingo de perguntas, já criei um script aleatório porém não sei nem como começar na criação de uma tabela de perguntas para ligar a estes números e sortear na tela estas. Alguém pode me ajudar?
maralvo- Iniciante
- PONTOS : 2289
REPUTAÇÃO : 0
Respeito as regras :
Re: Criação de um Bingo de Perguntas
É a mesma lógica de um bingo convencional, só que cada número sorteado refere-se a uma pergunta e as cartelas dos jogadores constará de 5 imagens relacionadas as perguntas, ganhará o bingo aquele que tiver respondido corretamente todas as perguntas referente a imagem em sua cartela.
Eu já consegui criar um script que sorteia a numeração, agora me falta inserir o banco de perguntas e linkar estas com a numeração sorteada e também criar o layout do jogo, coisa que estou engatinhando no Unity.
Você teria como me ajudar?
Eu já consegui criar um script que sorteia a numeração, agora me falta inserir o banco de perguntas e linkar estas com a numeração sorteada e também criar o layout do jogo, coisa que estou engatinhando no Unity.
Você teria como me ajudar?
maralvo- Iniciante
- PONTOS : 2289
REPUTAÇÃO : 0
Respeito as regras :
Re: Criação de um Bingo de Perguntas
as perguntas vc pode armazenar em uma array ou um array List;
supondo que vc tenha 25 perguntas e vai armazenar em um array.
public string[] perguntas=new string[25]; //aqui vc criou um arrey e instanciou 25 posiçoes.
para digitar as perguntas vc pode na aba do Unity e digitar. caso seja via scripit vai ser assim
perguntas[0]="Primeira pergunta";
perguntas[1]="Segunda pergunta";
//...
perguntas[24]="Vigesima quinta pergunta";
lembrando que array de 25 posiçoes sao enumeradas de posição 0 até a posição 24
totalizando 25 ja que a posição zero tbm é válida.
quando vc sortear a pergunta, vai ser assim
o numero sorteado vai ser de 0 a 25, sendo q o 25 nao pode ser sorteado, ja q tem até a posiçao 24
int i= Random.Range(0,25);
agora para aparecer a pergunta sorteada vai ser
string perguntaSorteada= perguntas[i];
print(perguntaSorteada);
para as resposta vc pode criar assim
public string[] resposta_0=new string[5]; no caso sao 5 respostas para uma certa
public string[] resposta_1=new string[5];
public string[] resposta_2=new string[5];
...
public string[] resposta_24=new string[5];
resposta_0[0]="alternativa A";
resposta_0[1]="alternativa B";
resposta_0[2]="alternativa C";
resposta_0[3]="alternativa D";
resposta_0[4]="alternativa E";
//...
resposta_1[0]="alternativa A";
//...
E ASSIM POR DIANTE NAS OUTRAS QUESTOES
agora, caso seja escolhido a questao 20; no caso o i que recebeu o sorteio do random foi 0 e vc queira q a alternativa certa seja a resposta D, no caso com indice 3
int escolha=...; // numero de escolha da pessoa de 0 a 4
switch(i){
case 0: //para a questao 0
if(escolha==3){
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
case 1: //para questao 1
if(escolha==2){ //suponto que o indice da alternativa certa seja 2
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
default:
break;
}
Existem formas muito mais melhoradas, com orientaçao a objeto. mas como vc esta iniciando agora, seria uma boa dica para vc começar a desenvolver
supondo que vc tenha 25 perguntas e vai armazenar em um array.
public string[] perguntas=new string[25]; //aqui vc criou um arrey e instanciou 25 posiçoes.
para digitar as perguntas vc pode na aba do Unity e digitar. caso seja via scripit vai ser assim
perguntas[0]="Primeira pergunta";
perguntas[1]="Segunda pergunta";
//...
perguntas[24]="Vigesima quinta pergunta";
lembrando que array de 25 posiçoes sao enumeradas de posição 0 até a posição 24
totalizando 25 ja que a posição zero tbm é válida.
quando vc sortear a pergunta, vai ser assim
o numero sorteado vai ser de 0 a 25, sendo q o 25 nao pode ser sorteado, ja q tem até a posiçao 24
int i= Random.Range(0,25);
agora para aparecer a pergunta sorteada vai ser
string perguntaSorteada= perguntas[i];
print(perguntaSorteada);
para as resposta vc pode criar assim
public string[] resposta_0=new string[5]; no caso sao 5 respostas para uma certa
public string[] resposta_1=new string[5];
public string[] resposta_2=new string[5];
...
public string[] resposta_24=new string[5];
resposta_0[0]="alternativa A";
resposta_0[1]="alternativa B";
resposta_0[2]="alternativa C";
resposta_0[3]="alternativa D";
resposta_0[4]="alternativa E";
//...
resposta_1[0]="alternativa A";
//...
E ASSIM POR DIANTE NAS OUTRAS QUESTOES
agora, caso seja escolhido a questao 20; no caso o i que recebeu o sorteio do random foi 0 e vc queira q a alternativa certa seja a resposta D, no caso com indice 3
int escolha=...; // numero de escolha da pessoa de 0 a 4
switch(i){
case 0: //para a questao 0
if(escolha==3){
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
case 1: //para questao 1
if(escolha==2){ //suponto que o indice da alternativa certa seja 2
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
default:
break;
}
Existem formas muito mais melhoradas, com orientaçao a objeto. mas como vc esta iniciando agora, seria uma boa dica para vc começar a desenvolver
Tiago95- Avançado
- PONTOS : 2628
REPUTAÇÃO : 32
Respeito as regras :
Re: Criação de um Bingo de Perguntas
vai ficar com um codigo gigantesco, mas tem uma logica simples e mais facil de iniciar. Qndo estiver mais avançado, vai ver que existem logicas mais complexas mas que reduzem bastante o trabalho e o tamanho do codigoTiago95 escreveu:as perguntas vc pode armazenar em uma array ou um array List;
supondo que vc tenha 25 perguntas e vai armazenar em um array.
public string[] perguntas=new string[25]; //aqui vc criou um arrey e instanciou 25 posiçoes.
para digitar as perguntas vc pode na aba do Unity e digitar. caso seja via scripit vai ser assim
perguntas[0]="Primeira pergunta";
perguntas[1]="Segunda pergunta";
//...
perguntas[24]="Vigesima quinta pergunta";
lembrando que array de 25 posiçoes sao enumeradas de posição 0 até a posição 24
totalizando 25 ja que a posição zero tbm é válida.
quando vc sortear a pergunta, vai ser assim
o numero sorteado vai ser de 0 a 25, sendo q o 25 nao pode ser sorteado, ja q tem até a posiçao 24
int i= Random.Range(0,25);
agora para aparecer a pergunta sorteada vai ser
string perguntaSorteada= perguntas[i];
print(perguntaSorteada);
para as resposta vc pode criar assim
public string[] resposta_0=new string[5]; no caso sao 5 respostas para uma certa
public string[] resposta_1=new string[5];
public string[] resposta_2=new string[5];
...
public string[] resposta_24=new string[5];
resposta_0[0]="alternativa A";
resposta_0[1]="alternativa B";
resposta_0[2]="alternativa C";
resposta_0[3]="alternativa D";
resposta_0[4]="alternativa E";
//...
resposta_1[0]="alternativa A";
//...
E ASSIM POR DIANTE NAS OUTRAS QUESTOES
agora, caso seja escolhido a questao 20; no caso o i que recebeu o sorteio do random foi 0 e vc queira q a alternativa certa seja a resposta D, no caso com indice 3
int escolha=...; // numero de escolha da pessoa de 0 a 4
switch(i){
case 0: //para a questao 0
if(escolha==3){
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
case 1: //para questao 1
if(escolha==2){ //suponto que o indice da alternativa certa seja 2
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
default:
break;
}
Existem formas muito mais melhoradas, com orientaçao a objeto. mas como vc esta iniciando agora, seria uma boa dica para vc começar a desenvolver
Tiago95- Avançado
- PONTOS : 2628
REPUTAÇÃO : 32
Respeito as regras :
Re: Criação de um Bingo de Perguntas
Tiago, este código eu crio separadamente em outro script ou juntamente com o script que gera os números aleatórios?
public string[] perguntas=new string[25]; //aqui vc criou um arrey e instanciou 25 posiçoes.
para digitar as perguntas vc pode na aba do Unity e digitar. caso seja via scripit vai ser assim
perguntas[0]="Primeira pergunta";
perguntas[1]="Segunda pergunta";
//...
perguntas[24]="Vigesima quinta pergunta";
lembrando que array de 25 posiçoes sao enumeradas de posição 0 até a posição 24
totalizando 25 ja que a posição zero tbm é válida.
quando vc sortear a pergunta, vai ser assim
o numero sorteado vai ser de 0 a 25, sendo q o 25 nao pode ser sorteado, ja q tem até a posiçao 24
int i= Random.Range(0,25);
agora para aparecer a pergunta sorteada vai ser
string perguntaSorteada= perguntas[i];
print(perguntaSorteada);
para as resposta vc pode criar assim
public string[] resposta_0=new string[5]; no caso sao 5 respostas para uma certa
public string[] resposta_1=new string[5];
public string[] resposta_2=new string[5];
...
public string[] resposta_24=new string[5];
resposta_0[0]="alternativa A";
resposta_0[1]="alternativa B";
resposta_0[2]="alternativa C";
resposta_0[3]="alternativa D";
resposta_0[4]="alternativa E";
//...
resposta_1[0]="alternativa A";
//...
E ASSIM POR DIANTE NAS OUTRAS QUESTOES
agora, caso seja escolhido a questao 20; no caso o i que recebeu o sorteio do random foi 0 e vc queira q a alternativa certa seja a resposta D, no caso com indice 3
int escolha=...; // numero de escolha da pessoa de 0 a 4
switch(i){
case 0: //para a questao 0
if(escolha==3){
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
case 1: //para questao 1
if(escolha==2){ //suponto que o indice da alternativa certa seja 2
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
default:
break;
}
public string[] perguntas=new string[25]; //aqui vc criou um arrey e instanciou 25 posiçoes.
para digitar as perguntas vc pode na aba do Unity e digitar. caso seja via scripit vai ser assim
perguntas[0]="Primeira pergunta";
perguntas[1]="Segunda pergunta";
//...
perguntas[24]="Vigesima quinta pergunta";
lembrando que array de 25 posiçoes sao enumeradas de posição 0 até a posição 24
totalizando 25 ja que a posição zero tbm é válida.
quando vc sortear a pergunta, vai ser assim
o numero sorteado vai ser de 0 a 25, sendo q o 25 nao pode ser sorteado, ja q tem até a posiçao 24
int i= Random.Range(0,25);
agora para aparecer a pergunta sorteada vai ser
string perguntaSorteada= perguntas[i];
print(perguntaSorteada);
para as resposta vc pode criar assim
public string[] resposta_0=new string[5]; no caso sao 5 respostas para uma certa
public string[] resposta_1=new string[5];
public string[] resposta_2=new string[5];
...
public string[] resposta_24=new string[5];
resposta_0[0]="alternativa A";
resposta_0[1]="alternativa B";
resposta_0[2]="alternativa C";
resposta_0[3]="alternativa D";
resposta_0[4]="alternativa E";
//...
resposta_1[0]="alternativa A";
//...
E ASSIM POR DIANTE NAS OUTRAS QUESTOES
agora, caso seja escolhido a questao 20; no caso o i que recebeu o sorteio do random foi 0 e vc queira q a alternativa certa seja a resposta D, no caso com indice 3
int escolha=...; // numero de escolha da pessoa de 0 a 4
switch(i){
case 0: //para a questao 0
if(escolha==3){
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
case 1: //para questao 1
if(escolha==2){ //suponto que o indice da alternativa certa seja 2
print("resposta correta");
pontos++;//tem que criar a variavel ponto para adicionar ponto para a pessoa;
}else{
print("resposta errada");}
break;
default:
break;
}
maralvo- Iniciante
- PONTOS : 2289
REPUTAÇÃO : 0
Respeito as regras :
Re: Criação de um Bingo de Perguntas
Pode criar junto. No mesmo script vc cria um método de sorteio que deve ser chamado no momento q vc determinar, como ao apertar alguma tecla por exemplo.
Tiago95- Avançado
- PONTOS : 2628
REPUTAÇÃO : 32
Respeito as regras :
Re: Criação de um Bingo de Perguntas
Tiago, uma dúvida. No caso cada pergunta não terá 4 ou 5 respostas, a resposta de cada pergunta será uma imagem. Como representar isso no código?
ex: Pergunta 1: Qual a tecla de atalho que serve para copiar algo?
Resposta: CTRL + C (terá uma imagem na cartela desta combinação)
ex: Pergunta 1: Qual a tecla de atalho que serve para copiar algo?
Resposta: CTRL + C (terá uma imagem na cartela desta combinação)
maralvo- Iniciante
- PONTOS : 2289
REPUTAÇÃO : 0
Respeito as regras :
Re: Criação de um Bingo de Perguntas
Aí ao invés de criar um array do tipo string, vai criar um array do tipo imagem. Pesquise sobre Sprite 2d. Aí na hora de criar as posições coloca 4 ao invés de 5.para referenciar a imagem dentro do array, faz pela aba dá unity. Lembra q seu script tem q estar inserido em algum objeto dá cena. Como vc criou array pública, vai aparecer as listas, e vc arrasta cada imagem para dentro do local correto da resposta
Tiago95- Avançado
- PONTOS : 2628
REPUTAÇÃO : 32
Respeito as regras :
Re: Criação de um Bingo de Perguntas
Entendi, grato. Vc é fera!!!
maralvo- Iniciante
- PONTOS : 2289
REPUTAÇÃO : 0
Respeito as regras :
Re: Criação de um Bingo de Perguntas
Vê esse tutorial, eu explico exatamente isso que você tá querendo:
http://compilemosfacil.blogspot.com/2018/01/desenvolvendo-um-jogo-de-quiz-com.html
http://compilemosfacil.blogspot.com/2018/01/desenvolvendo-um-jogo-de-quiz-com.html
Tópicos semelhantes
» Jogo Quiz perguntas aleatórias
» Algumas perguntas sobre cenas e transições
» JOGO QUIS - Como fazer as perguntas serem aleatórias?
» sistema de perguntas aleatórias de maneira que elas só se repetissem ao se passar todas
» Como fazer as perguntas ficarem aleatorias em jogo quiz - Unity 2D
» Algumas perguntas sobre cenas e transições
» JOGO QUIS - Como fazer as perguntas serem aleatórias?
» sistema de perguntas aleatórias de maneira que elas só se repetissem ao se passar todas
» Como fazer as perguntas ficarem aleatorias em jogo quiz - Unity 2D
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos