public ResultadoActividad ingresarLetraUsuario(string letra) { ResultadoActividad result = new ResultadoActividad(); comparación comparaciónLetraUsuario; cargar resultCarga = cargar.cargada; if (swHayPalabraNueva == true) { swHayPalabraNueva = false; //si la anterior fue palabra nueva, se resetea } if (this.swHayLecciónNueva == true) { this.swHayLecciónNueva = false; //si la anterior fue lección nueva, se resetea } comparaciónLetraUsuario = chequearLetraUsuario(letra); if (comparaciónLetraUsuario == comparación.igual) //se chequea si la letra del usuario es correcta { palabraActualUsuario += letra; resultCarga = cargarSiguienteLetraLección(); result.letraCorrecta = true; } else { if (auxLetras.esLetraConAcento(letraActualLección)) { result.esperarPorAcento = true; //si antes se escribió el acento correctamente y se esperaba por la vocal correcta, pero el usuario apretó una errónea, no se le pide que escriba de nuevo el acento, sólo la vocal } result.letraCorrecta = false; } if (comparaciónLetraUsuario == comparación.esperarAcento) { result.esperarPorAcento = true; result.letraCorrecta = true; } if (this.swHayLecciónNueva) //si hay una lección nueva dentro de la misma actividad { result.nuevaLección = true; } else { result.nuevaLección = false; } //si hay aún letras en la lección o lecciones en la actividad if (resultCarga == cargar.cargada) { result.continúaActividad = true; } else { result.continúaActividad = false; } return(result); }
private cargar cargarSiguienteLetraLección() { cargar result = cargar.cargada; if (textoLecciónAúnNoEscrito.Length == 0) //si ya no hay texto en la lección, se intenta cargar una siguiente { result = cargarLecciónSiguiente(); } else { //if (textoLecciónAúnNoEscrito.Substring(0, 1) != " ") //si el primer carácter no es espacio // textoLecciónAúnNoEscrito = " " + textoLecciónAúnNoEscrito; if (textoLecciónAúnNoEscrito != "") { if (textoLecciónAúnNoEscrito.Substring(0, 1) == " ") //si hay más de un espacio { do //se le quitan todos los espacios { textoLecciónAúnNoEscrito = textoLecciónAúnNoEscrito.Substring(1, textoLecciónAúnNoEscrito.Length - 1); if (textoLecciónAúnNoEscrito == "") { break; //si ya no hay más texto, se sale del bucle } } while (textoLecciónAúnNoEscrito.Substring(0, 1) == " "); textoLecciónAúnNoEscrito = " " + textoLecciónAúnNoEscrito; //se le agrega un espacio } } } if (result != cargar.noQuedanLecciones && !this.swHayLecciónNueva) //si todavía hay lecciones en la actividad y no es que recién se está cargando la última letra de la actividad { letraAnteriorLección = letraActualLección; textoLecciónYaEscrito += letraAnteriorLección; letraActualLección = textoLecciónAúnNoEscrito.Substring(0, 1); textoLecciónAúnNoEscrito = textoLecciónAúnNoEscrito.Substring(1, textoLecciónAúnNoEscrito.Length - 1); if (letraAnteriorLección == " ") { swHayPalabraNueva = true; cargarSiguientePalabraLección(); } else { swHayPalabraNueva = false; } } return(result); }