/** * Verifica (duh) si la respuesta del jugador es correcta, de serlo se inicializa la corrutina Sumar() * llama al método Ajustar() inicianzo otro problema. */ public void Verificar() { if (respuesta != pregunta) { respuestaTxt.color = Color.red; } else { respuestaTxt.color = gris; puntuacion = (puntuacion + ((int)(pregunta[0]) + (int)pregunta[1] + (int)pregunta[3] + (int)pregunta[4] - 188) * 100); PlayerPrefs.SetInt("UltimaPuntuacionReloj", puntuacion); StopCoroutine("Sumar"); StartCoroutine("Sumar", puntuacion); temporizador.ReestablecerReloj(); Ajustar(); } }
/** * Se suma el valor de la respuesta del usuario y verifica si ha llegado al resultado * de ser así llama al método Ajustar() y a la corrutina SumaPuntuacion() */ public void Sumar(NumeroSuma suma) { if (suma.getEncendido()) { sumatoria += suma.getNumero(); } else { sumatoria -= suma.getNumero(); } sumatoriatxt.text = "" + sumatoria; if (sumatoria == respuesta) { puntuacion += respuesta * 10; StopCoroutine("SumaPuntuacion"); StartCoroutine("SumaPuntuacion", puntuacion); temporizador.ReestablecerReloj(); Ajustar(); } }
/** * Dependiendo del botón que presionó el jugador se suma el valor del botón a la respuesta del jugador * Si la respuesta del jugador es igual al problema se llama al método Ajustar() * @param posicion Es la posición (0-7) del botón que presionó el jugador * @param Estado Representa si el botón está encendido o apagado */ public void Binario(int posicion, bool estado) { byte res = byte.Parse(respuestaTxt.text); switch (estado) { case true: res += (byte)(Mathf.Pow(2, posicion)); break; case false: res -= (byte)(Mathf.Pow(2, posicion)); break; } respuestaTxt.text = "" + res; if (decimalTxt.text == respuestaTxt.text) { puntuacion += int.Parse(respuestaTxt.text) * 10; StopCoroutine("SumaPuntuacion"); StartCoroutine("SumaPuntuacion", puntuacion); temporizador.ReestablecerReloj(); Ajustar(); } }