Извините за одновременный вопрос, только этот уже давно меня цепляет.
Возвращаясь к этим четырем кнопкам (после последнего поста), я хотел, чтобы они стали зелеными после «правильного щелчка». Так что, если один человек нажмет правую кнопку, он станет зеленым.
Первоначально я решил сделать 4 переменные и установить для них «y» и «n». Если пользователь нажмет правую кнопку, он получит «у», что приведет к тому, что соответствующий объект станет «зеленым», и так далее.
Однако, когда я сделал это, все кнопки стали зелеными. После проверки отладки все они становятся зелеными после одного правильного ответа, который заставляет меня думать, что они каким-то образом связаны (каким-то образом я не понимаю).
Вот код, который я использовал:
void Update () {
Image image = GameObject.Find("Answer1").GetComponent<Image>();
Image image2 = GameObject.Find("Answer2").GetComponent<Image>();
Image image3 = GameObject.Find("Answer3").GetComponent<Image>();
Image image4 = GameObject.Find("Answer4").GetComponent<Image>();
if (randQuestion == -1)
{
randQuestion = Random.Range(0, 5);
}
if (randQuestion > -1)
{
GetComponent<Text>().text = questions[randQuestion];
}
if (choiceSelected == "y")
{
choiceSelected = "n";
if (correctAnswer[randQuestion] == buttonSelected)
{
Debug.Log("Correct!");
if (Answer1script.answerCorrect1 == "y")
{
image.color = Color.green;
}
if (Answer2script.answerCorrect2 == "y")
{
image2.color = Color.green;
}
if (Answer3script.answerCorrect3 == "y")
{
image3.color = Color.green;
}
if (Answer4script.answerCorrect4 == "y")
{
image4.color = Color.green;
}
}
}
}
Я, очевидно, сделал что-то не так; любая помощь будет принята с благодарностью!