[Ajuda] Novamente
2 participantes
Página 1 de 1
[Ajuda] Novamente
bom, eu to com meu sistema quase pronto, só não estou conseguindo fazer com que os botões de resposta funcionem, já tentei de tudo qualquer jeito, já tentei fazer um script individual para cada botao, é o seguinte, tem o texto do botao, e eu quero que ao clicar nele, o script verifica se o texto dele coincide com o texto da resposta verdadeira, e se for, o jogador acertou, se não, errou, meio óbvio, não? entao, nao tenho script para postar, mas exeplo, eu tenho 3 botões, a cada pergunta, os boto~es mudam e um deles vai ser a resposta verdadeira, e eu tenho uma variavel que recebe toda hora a resposta verdadeira alem das outras 3, queria que ao clicar no botão, o script pegasse o texto dele e comparasse com a variavel que guarda a resposta verdadeira.
Última edição por NotoriousDev em Ter Jun 07, 2016 5:37 pm, editado 1 vez(es)
Re: [Ajuda] Novamente
bom basta fazer um método com parâmetro string e passar a resposta para esse botão
e basta verifica se a resposta selecionada e correta ou não
ex:
e basta verifica se a resposta selecionada e correta ou não
ex:
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Linq;
public class Answer : MonoBehaviour {
public string answerQuestion = "3";
public string[] answerVariable;
public Button buttonsAnswer;
public Button buttonsAnswer1;
public Button buttonsAnswer2;
void Start()
{
buttonsAnswer.onClick = new Button.ButtonClickedEvent();
buttonsAnswer.onClick.AddListener(() => CompareAnswer(answerVariable[0]));
buttonsAnswer1.onClick = new Button.ButtonClickedEvent();
buttonsAnswer1.onClick.AddListener(() => CompareAnswer(answerVariable[1]));
buttonsAnswer2.onClick = new Button.ButtonClickedEvent();
buttonsAnswer2.onClick.AddListener(() => CompareAnswer(answerVariable[2]));
}
public void CompareAnswer(string answer)
{
if (answer == string.Empty)
return;
if (answer == answerQuestion)
{
Debug.Log("Respota Certa! Vai Ganhar um Doce ");
}
else
{
Debug.Log("Respota Errada! Tente Novamenta Mais Tarde '-' ");
}
}
}
Weslley- Moderador
- PONTOS : 5726
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [Ajuda] Novamente
weslleyFx escreveu:bom basta fazer um método com parâmetro string e passar a resposta para esse botão
e basta verifica se a resposta selecionada e correta ou não
ex:
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Linq;
public class Answer : MonoBehaviour {
public string answerQuestion = "3";
public string[] answerVariable;
public Button buttonsAnswer;
public Button buttonsAnswer1;
public Button buttonsAnswer2;
void Start()
{
buttonsAnswer.onClick = new Button.ButtonClickedEvent();
buttonsAnswer.onClick.AddListener(() => CompareAnswer(answerVariable[0]));
buttonsAnswer1.onClick = new Button.ButtonClickedEvent();
buttonsAnswer1.onClick.AddListener(() => CompareAnswer(answerVariable[1]));
buttonsAnswer2.onClick = new Button.ButtonClickedEvent();
buttonsAnswer2.onClick.AddListener(() => CompareAnswer(answerVariable[2]));
}
public void CompareAnswer(string answer)
{
if (answer == string.Empty)
return;
if (answer == answerQuestion)
{
Debug.Log("Respota Certa! Vai Ganhar um Doce ");
}
else
{
Debug.Log("Respota Errada! Tente Novamenta Mais Tarde '-' ");
}
}
}
valeu pela resposta mano, mas ai. eu ri kkkkkk vai ganhar um doce
a answervariable pode ser um Text? ai eu colocaria o texto dos botoes
Re: [Ajuda] Novamente
NotoriousDev escreveu:weslleyFx escreveu:bom basta fazer um método com parâmetro string e passar a resposta para esse botão
e basta verifica se a resposta selecionada e correta ou não
ex:
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Linq;
public class Answer : MonoBehaviour {
public string answerQuestion = "3";
public string[] answerVariable;
public Button buttonsAnswer;
public Button buttonsAnswer1;
public Button buttonsAnswer2;
void Start()
{
buttonsAnswer.onClick = new Button.ButtonClickedEvent();
buttonsAnswer.onClick.AddListener(() => CompareAnswer(answerVariable[0]));
buttonsAnswer1.onClick = new Button.ButtonClickedEvent();
buttonsAnswer1.onClick.AddListener(() => CompareAnswer(answerVariable[1]));
buttonsAnswer2.onClick = new Button.ButtonClickedEvent();
buttonsAnswer2.onClick.AddListener(() => CompareAnswer(answerVariable[2]));
}
public void CompareAnswer(string answer)
{
if (answer == string.Empty)
return;
if (answer == answerQuestion)
{
Debug.Log("Respota Certa! Vai Ganhar um Doce ");
}
else
{
Debug.Log("Respota Errada! Tente Novamenta Mais Tarde '-' ");
}
}
}
valeu pela resposta mano, mas ai. eu ri kkkkkk vai ganhar um doce
a answervariable pode ser um Text? ai eu colocaria o texto dos botoes
bom ai na verdade vai as reposta que o usuário final vai escolher
vc pode tbm pode adicionar as respostas nos botões dessa forma
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
public class Fire : MonoBehaviour {
public string answerQuestion = "3";
public List<string> answerVariable;
public List<Button> buttonsAnswer;
void Start()
{
foreach (Button button in buttonsAnswer)
{
foreach (string answer in answerVariable)
{
button.onClick = new Button.ButtonClickedEvent();
button.onClick.AddListener(() => CompareAnswer(answer));
answerVariable.Remove(answer);
break;
}
}
}
public void CompareAnswer(string answer)
{
if (answer == string.Empty)
return;
if (answer == answerQuestion)
{
Debug.Log("Respota Certa! Vai Ganhar um Doce ");
}
else
{
Debug.Log("Respota Errada! Tente Novamenta Mais Tarde '-' ");
}
}
}
Weslley- Moderador
- PONTOS : 5726
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [Ajuda] Novamente
weslleyFx escreveu:NotoriousDev escreveu:weslleyFx escreveu:bom basta fazer um método com parâmetro string e passar a resposta para esse botão
e basta verifica se a resposta selecionada e correta ou não
ex:
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Linq;
public class Answer : MonoBehaviour {
public string answerQuestion = "3";
public string[] answerVariable;
public Button buttonsAnswer;
public Button buttonsAnswer1;
public Button buttonsAnswer2;
void Start()
{
buttonsAnswer.onClick = new Button.ButtonClickedEvent();
buttonsAnswer.onClick.AddListener(() => CompareAnswer(answerVariable[0]));
buttonsAnswer1.onClick = new Button.ButtonClickedEvent();
buttonsAnswer1.onClick.AddListener(() => CompareAnswer(answerVariable[1]));
buttonsAnswer2.onClick = new Button.ButtonClickedEvent();
buttonsAnswer2.onClick.AddListener(() => CompareAnswer(answerVariable[2]));
}
public void CompareAnswer(string answer)
{
if (answer == string.Empty)
return;
if (answer == answerQuestion)
{
Debug.Log("Respota Certa! Vai Ganhar um Doce ");
}
else
{
Debug.Log("Respota Errada! Tente Novamenta Mais Tarde '-' ");
}
}
}
valeu pela resposta mano, mas ai. eu ri kkkkkk vai ganhar um doce
a answervariable pode ser um Text? ai eu colocaria o texto dos botoes
bom ai na verdade vai as reposta que o usuário final vai escolher
vc pode tbm pode adicionar as respostas nos botões dessa forma
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
public class Fire : MonoBehaviour {
public string answerQuestion = "3";
public List<string> answerVariable;
public List<Button> buttonsAnswer;
void Start()
{
foreach (Button button in buttonsAnswer)
{
foreach (string answer in answerVariable)
{
button.onClick = new Button.ButtonClickedEvent();
button.onClick.AddListener(() => CompareAnswer(answer));
answerVariable.Remove(answer);
break;
}
}
}
public void CompareAnswer(string answer)
{
if (answer == string.Empty)
return;
if (answer == answerQuestion)
{
Debug.Log("Respota Certa! Vai Ganhar um Doce ");
}
else
{
Debug.Log("Respota Errada! Tente Novamenta Mais Tarde '-' ");
}
}
}
tendi mano, valeu novamente
Re: [Ajuda] Novamente
[quote="NotoriousDev"][quote="weslleyFx"]
bom ai na verdade vai as reposta que o usuário final vai escolher
vc pode tbm pode adicionar as respostas nos botões dessa forma
Opa, o primeiro script vai no botao ou posso colocar no meu gerenciador do jogo?
NotoriousDev escreveu:weslleyFx escreveu:bom basta fazer um método com parâmetro string e passar a resposta para esse botão
e basta verifica se a resposta selecionada e correta ou não
ex:
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Linq;
public class Answer : MonoBehaviour {
public string answerQuestion = "3";
public string[] answerVariable;
public Button buttonsAnswer;
public Button buttonsAnswer1;
public Button buttonsAnswer2;
void Start()
{
buttonsAnswer.onClick = new Button.ButtonClickedEvent();
buttonsAnswer.onClick.AddListener(() => CompareAnswer(answerVariable[0]));
buttonsAnswer1.onClick = new Button.ButtonClickedEvent();
buttonsAnswer1.onClick.AddListener(() => CompareAnswer(answerVariable[1]));
buttonsAnswer2.onClick = new Button.ButtonClickedEvent();
buttonsAnswer2.onClick.AddListener(() => CompareAnswer(answerVariable[2]));
}
public void CompareAnswer(string answer)
{
if (answer == string.Empty)
return;
if (answer == answerQuestion)
{
Debug.Log("Respota Certa! Vai Ganhar um Doce ");
}
else
{
Debug.Log("Respota Errada! Tente Novamenta Mais Tarde '-' ");
}
}
}
valeu pela resposta mano, mas ai. eu ri kkkkkk vai ganhar um doce
a answervariable pode ser um Text? ai eu colocaria o texto dos botoes
bom ai na verdade vai as reposta que o usuário final vai escolher
vc pode tbm pode adicionar as respostas nos botões dessa forma
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
public class Fire : MonoBehaviour {
public string answerQuestion = "3";
public List<string> answerVariable;
public List<Button> buttonsAnswer;
void Start()
{
foreach (Button button in buttonsAnswer)
{
foreach (string answer in answerVariable)
{
button.onClick = new Button.ButtonClickedEvent();
button.onClick.AddListener(() => CompareAnswer(answer));
answerVariable.Remove(answer);
break;
}
}
}
public void CompareAnswer(string answer)
{
if (answer == string.Empty)
return;
if (answer == answerQuestion)
{
Debug.Log("Respota Certa! Vai Ganhar um Doce ");
}
else
{
Debug.Log("Respota Errada! Tente Novamenta Mais Tarde '-' ");
}
}
}
Opa, o primeiro script vai no botao ou posso colocar no meu gerenciador do jogo?
Re: [Ajuda] Novamente
vc so vai ter que linkar os botões
Weslley- Moderador
- PONTOS : 5726
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [Ajuda] Novamente
mano, eu quero saber muito o que significa o Lambda (=>) antes de usar ele, eu pesquisei no msdn e relacionou com um tal de LINQ aí que eu não entendi nada, poderia me explicar?weslleyFx escreveu:vc so vai ter que linkar os botões
Weslley- Moderador
- PONTOS : 5726
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [Ajuda] Novamente
se liga, eles escrevem 30 paginas mas nao consigo entender o que entendo com essas duas palavras tuas, valeuweslleyFx escreveu:isso e o operador lambda que significa mais ou menos "vai para"
Tópicos semelhantes
» Ajuda aqui Novamente
» Ajuda com UI, novamente. [RESOLVIDO]
» Fiz uma demo, Vejam o que vcs acham
» Ativar um collider novamente com Raycast !
» Finalização Calculadora, fazer com que o jogador tente novamente
» Ajuda com UI, novamente. [RESOLVIDO]
» Fiz uma demo, Vejam o que vcs acham
» Ativar um collider novamente com Raycast !
» Finalização Calculadora, fazer com que o jogador tente novamente
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos