private void escoger_respuesta_correcta() { coneccion_db = conex_db.Abrir_DB(); comando_db = coneccion_db.CreateCommand(); string query = string.Format("SELECT DISTINCT r.cod_respuesta, r.respuesta_descripcion " + "FROM preguntas p " + "INNER JOIN res_pre rp ON p.cod_pregunta = rp.cod_pregunta " + "INNER JOIN respuesta r ON rp.cod_respuesta = r.cod_respuesta " + "WHERE r.respuesta_activo = 1 AND p.preguntas_activo = 1 AND p.cod_pregunta = \"{0}\" AND rp.respuesta_correcta = 1 " + "ORDER BY random() " + "LIMIT 1 ", Cod_Pregunta); //Debug.Log(query); comando_db.CommandText = query; lector_db = comando_db.ExecuteReader(); if (lector_db.Read()) { string cod_respuesta = lector_db.GetString(0); string texto_pregunta = lector_db.GetString(1); //Debug.Log(cod_respuesta + " " + texto_pregunta); respuestas.Add(new Respuesta(cod_respuesta, texto_pregunta)); } lector_db.Close(); lector_db = null; comando_db.Dispose(); comando_db = null; coneccion_db.Close(); coneccion_db = null; }
void desbloquear_nivel() { coneccion_db = conex_db.Abrir_DB(); comando_db = coneccion_db.CreateCommand(); string query = string.Format("UPDATE nivel_desbloqueado SET disponible = 1 WHERE (nombre_nivel, nombre_cuenta) IN (SELECT nj.nombre_nivel, nd.nombre_cuenta FROM nivel_desbloqueado nd INNER JOIN usuario u ON nd.nombre_cuenta = u.nombre_cuenta INNER JOIN nivel_juego nj ON nj.nombre_nivel = nd.nombre_nivel WHERE nd.nombre_cuenta = \"{0}\" AND nd.disponible = 0 AND nj.nivel_requerido <= u.nivel_cuenta);", Global_Session.Nombre_Usuario); comando_db.CommandText = query; int filas = comando_db.ExecuteNonQuery(); if (filas <= 0) { //Debug.Log("No se actualizo nivel."); } else { //Debug.Log("Nivel actualizado"); } comando_db.Dispose(); comando_db = null; coneccion_db.Close(); coneccion_db = null; }
private void Responder(string cod_pregunta, string cod_res, string txt_res) { coneccion_db = conex_db.Abrir_DB(); comando_db = coneccion_db.CreateCommand(); bool res_correcta = false; string query = string.Format("SELECT RP.respuesta_correcta " + "FROM preguntas p " + "INNER JOIN res_pre rp ON p.cod_pregunta = rp.cod_pregunta " + "INNER JOIN respuesta r ON rp.cod_respuesta = r.cod_respuesta " + "WHERE p.cod_pregunta = \"{0}\" AND r.cod_respuesta = \"{1}\";", cod_pregunta, cod_res); comando_db.CommandText = query; lector_db = comando_db.ExecuteReader(); if (lector_db.Read()) { res_correcta = lector_db.GetBoolean(0); } lector_db.Close(); lector_db = null; comando_db.Dispose(); comando_db = null; coneccion_db.Close(); coneccion_db = null; responder_pregunta(res_correcta, txt_res); //Debug.Log(res_correcta); //Debug.Log(EventSystem.current.currentSelectedGameObject.transform.GetChild(0).gameObject.GetComponent<Text>().text); }
float getPorcentajeAcertado(DateTime fecha) { string strFecha = fecha.ToString("yyyy-MM-dd"); db_conexion = conexion_db.Abrir_DB(); db_comando = db_conexion.CreateCommand(); string query = string.Format("SELECT (SUM(E.porcentaje_acertado) / COUNT(*)) AS porcentaje_Exito FROM estadistica e INNER JOIN usuario u ON e.nombre_cuenta = u.nombre_cuenta WHERE u.nombre_cuenta = \"{0}\" AND date(e.fecha_dia) = \"{1}\" GROUP BY e.fecha_dia;", Global_Session.Nombre_Usuario, strFecha); db_comando.CommandText = query; db_lector = db_comando.ExecuteReader(); float porcentaje_acertado = 0; if (db_lector.Read()) { porcentaje_acertado = db_lector.GetFloat(0); } db_lector.Close(); db_lector = null; db_comando.Dispose(); db_comando = null; conexion_db.Cerrar_DB(); return(porcentaje_acertado); }
int puntaje_Total_Nivel() { coneccion_db = conex_db.Abrir_DB(); comando_db = coneccion_db.CreateCommand(); TimeSpan Tiempo_Optimo; string query = string.Format("SELECT tiempo FROM nivel_juego WHERE nombre_nivel = \"{0}\" AND nivel_juego_activo = 1;", Global_Session.Nombre_Nivel); comando_db.CommandText = query; lector_db = comando_db.ExecuteReader(); if (lector_db.Read()) { Tiempo_Optimo = TimeSpan.Parse(lector_db.GetString(0)); } lector_db.Close(); lector_db = null; comando_db.Dispose(); comando_db = null; coneccion_db.Close(); coneccion_db = null; return(Convert.ToInt32(Math.Floor(Tiempo_Optimo.TotalSeconds))); }
bool iniciar_sesion_cuenta_db(string nombre_cuenta, string contraseña) { bool existe_cuenta = false; db_conexion = conexion_db.Abrir_DB(); db_comando = db_conexion.CreateCommand(); string query = string.Format("SELECT nombre_cuenta, contraseña FROM usuario WHERE usuario_cuenta_activo = 1 AND nombre_cuenta = \"{0}\" AND contraseña = \"{1}\";", nombre_cuenta, contraseña); db_comando.CommandText = query; db_lector = db_comando.ExecuteReader(); while (db_lector.Read()) { string nom_cuenta = db_lector.GetString(0); string con = db_lector.GetString(1); if (nombre_cuenta == nom_cuenta && contraseña == con) { existe_cuenta = true; Global_Session.Nombre_Usuario = nom_cuenta; Global_Session.Contraseña = con; break; } } conexion_db.Cerrar_DB(); return(existe_cuenta); }
void buscar_logro_db() { lista_logro.Clear(); coneccion_db = conex_db.Abrir_DB(); comando_db = coneccion_db.CreateCommand(); string query = string.Format("SELECT tl.nombre_tipo_logro, tl.descripcion_logro, ln.cantidad_objetivo_alcanzar, l.progreso_objetivo_actual, l.nivel_logro FROM logro l INNER JOIN tipo_logro tl ON l.nombre_tipo_logro = tl.nombre_tipo_logro INNER JOIN logro_niveles ln ON tl.nombre_tipo_logro = ln.nombre_tipo_logro INNER JOIN usuario u ON u.nombre_cuenta = l.nombre_cuenta WHERE l.nivel_logro = ln.nivel_logro AND u.nombre_cuenta = \"{0}\" AND u.usuario_cuenta_activo = 1;", Global_Session.Nombre_Usuario); Debug.Log(query); comando_db.CommandText = query; lector_db = comando_db.ExecuteReader(); while (lector_db.Read()) { string nombre_logro = lector_db.GetString(0); string descripcion_logro = lector_db.GetString(1); int cantidad_objetivo_alcanzar = lector_db.GetInt32(2); int progreso_objetivo_actual = lector_db.GetInt32(3); int nivel_logro = lector_db.GetInt32(4); Sprite img_logro = lista_img_logro[1]; for (int i = 0; i < lista_img_logro.Count; i++) { if (nombre_logro == lista_img_logro[i].name) { img_logro = lista_img_logro[i]; //Debug.Log(lista_img_logro[i].name); } } logros_mensaje_debug.text = string.Format("{0}, {1}, {2}, {3}", nombre_logro, descripcion_logro, cantidad_objetivo_alcanzar, progreso_objetivo_actual); //Debug.Log(string.Format("{0} , {1} , {2} , {3}", nombre_logro, descripcion_logro, cantidad_objetivo_alcanzar, progreso_objetivo_actual)); lista_logro.Add(new Logro(nombre_logro, descripcion_logro, cantidad_objetivo_alcanzar, progreso_objetivo_actual, img_logro, nivel_logro)); } lector_db.Close(); lector_db = null; comando_db.Dispose(); comando_db = null; coneccion_db.Close(); coneccion_db = null; }
void actualizar_info() { db_conexion = conexion_db.Abrir_DB(); db_comando = db_conexion.CreateCommand(); string query = string.Format("SELECT nivel_cuenta, exp_actual, exp_sig_nivel, puntos, nombre_usuario, apellido_usuario FROM usuario WHERE nombre_cuenta = \"{0}\" and contraseña = \"{1}\";", Global_Session.Nombre_Usuario, Global_Session.Contraseña); //Debug.Log(query); int nivel_cuenta = 0; int puntos = 0; db_comando.CommandText = query; db_lector = db_comando.ExecuteReader(); if (db_lector.Read()) { //Debug.Log(string.Format("{0} : {1}",Global_Session.Nombre_Usuario, Global_Session.Contraseña)); //Debug.Log(string.Format("{0}, {1}, {2}, {3}", db_lector.GetInt32(0).ToString(), db_lector.GetInt32(1).ToString(), db_lector.GetInt32(2).ToString(), db_lector.GetInt32(3).ToString())); nivel_cuenta = db_lector.GetInt32(0); puntos = db_lector.GetInt32(3); string nombre = db_lector.GetString(4); string apellido = db_lector.GetString(5); txt_level.text = "NV. " + nivel_cuenta.ToString(); txt_exp_total_y_sig_nivel.text = "E X P. " + db_lector.GetInt32(1).ToString() + "/" + db_lector.GetInt32(2).ToString(); txt_puntos.text = puntos.ToString(); img_barra_experiencia.fillAmount = (((100 * (float)db_lector.GetInt32(1)) / (float)db_lector.GetInt32(2)) / 100); Debug.Log((((100 * (float)db_lector.GetInt32(1)) / (float)db_lector.GetInt32(2))) / 100); Global_Session.Nombre = nombre; Global_Session.Apellido = apellido; Global_Session.Puntos = puntos.ToString(); } db_lector.Close(); db_lector = null; db_comando.Dispose(); db_comando = null; db_conexion.Close(); db_conexion = null; string[] nombres_logros = { "DINERO_PUNTOS", "NIVEL_ALCANZADO" }; actualizar_logro(puntos, nombres_logros[0]); actualizar_logro(nivel_cuenta, nombres_logros[1]); }
public int buscar_cantidad_preguntas() { coneccion_db = conex_db.Abrir_DB(); comando_db = coneccion_db.CreateCommand(); string query = string.Format("SELECT cantidad_preguntas FROM nivel_juego nj WHERE nombre_nivel = \"{0}\" AND nivel_juego_activo = 1;", Global_Session.Nombre_Nivel); comando_db.CommandText = query; try { lector_db = comando_db.ExecuteReader(); if (lector_db.Read()) { int cant_preguntas = 0; cant_preguntas = lector_db.GetInt32(0); //Debug.Log(cant_preguntas); lector_db.Close(); lector_db = null; comando_db.Dispose(); comando_db = null; coneccion_db.Close(); coneccion_db = null; return(cant_preguntas); } lector_db.Close(); lector_db = null; comando_db.Dispose(); comando_db = null; coneccion_db.Close(); coneccion_db = null; return(0); } catch (System.Exception) { coneccion_db.Close(); Debug.Log("Error buscar_cantidad_preguntas()"); return(0); } }
void añadir_cuenta_db(string nombre_cuenta, string nombre, string apellido, string contraseña) { db_conexion = conexion_db.Abrir_DB(); db_comando = db_conexion.CreateCommand(); string query = string.Format("INSERT INTO usuario Values( \"{0}\", \"{1}\", \"{2}\", \"{3}\", 1, 200, 0, 0, 1, DATE());", nombre_cuenta, nombre, apellido, contraseña); db_comando.CommandText = query; error.text = query; Debug.Log(query); try { int filas = db_comando.ExecuteNonQuery(); if (filas <= 0) { db_comando.Dispose(); db_comando = null; conexion_db.Cerrar_DB(); error.text = "Error, no se creo la cuenta IF."; Debug.Log("Error, no se creo la cuenta IF."); } else { db_comando.Dispose(); db_comando = null; conexion_db.Cerrar_DB(); error.text = "eXITO,se creo la cuenta."; añadir_logros_db(nombre_cuenta); añadir_nivel_desbloqueado_db(nombre_cuenta); añadir_respuestas_dadas(nombre_cuenta); } } catch (System.Exception) { error.text = "Error, no se creo la cuenta CATCH."; Debug.Log("Error, no se creo la cuenta CATCH."); throw; } }
private void insertar_resultado_juego() { string hoy = DateTime.Now.ToString("yyyy-MM-dd"); coneccion_db = conex_db.Abrir_DB(); comando_db = coneccion_db.CreateCommand(); string query = string.Format("INSERT INTO juego_resultados " + "VALUES( \"{0}\", \"{1}\", {2}, {3}, \"{4}\", {5}, {6}, \"{7}\");" , Global_Session.Nombre_Usuario, Global_Session.Nombre_Nivel, Cant_Preguntas_Correctas, Cant_Preguntas_Incorrectas, Preguntas_Tiempo_Total, Preguntas_Puntos, Experiencia_Obtenida, hoy); comando_db.CommandText = query; try { int filas = comando_db.ExecuteNonQuery(); comando_db.Dispose(); comando_db = null; coneccion_db.Close(); coneccion_db = null; if (filas <= 0) { Debug.Log("No se guardo los resultados"); } else { Debug.Log("Se guardo los resultados"); } } catch (Exception) { Debug.Log("No se guardo los resultados CATCH"); throw; } }
private void escoger_dato_extra(int cantidad_datos_extra) { coneccion_db = conex_db.Abrir_DB(); comando_db = coneccion_db.CreateCommand(); string query = string.Format("SELECT * " + "FROM (SELECT dn.cod_dato, dc.dato_texto " + "FROM dato_cisco dc " + "INNER JOIN dato_nivel dn ON dc.cod_dato = dn.cod_dato " + "INNER JOIN nivel_juego nj ON dn.nombre_nivel = nj.nombre_nivel " + "WHERE dn.nombre_nivel = \"{0}\" AND nj.nivel_juego_activo = 1 AND dc.dato_activo = 1 " + "ORDER BY dn.cantidad_veces_visto DESC LIMIT {1}) " + "ORDER BY random();", Global_Session.Nombre_Nivel, cantidad_datos_extra); Debug.Log(query); comando_db.CommandText = query; lector_db = comando_db.ExecuteReader(); while (lector_db.Read()) { string cod_dato = lector_db.GetString(0); string dato_texto = lector_db.GetString(1); Debug.Log(cod_dato + " " + dato_texto); dato_extra.Add(new Datos_Extra_Cisco(cod_dato, dato_texto)); } lector_db.Close(); lector_db = null; comando_db.Dispose(); comando_db = null; coneccion_db.Close(); coneccion_db = null; }
void actualizar_info() { db_conexion = conexion_db.Abrir_DB(); db_comando = db_conexion.CreateCommand(); string query = string.Format("SELECT nivel_cuenta, exp_actual, exp_sig_nivel, puntos, nombre_usuario, apellido_usuario, nombre_cuenta FROM usuario WHERE nombre_cuenta = \"{0}\" and contraseña = \"{1}\";", Global_Session.Nombre_Usuario, Global_Session.Contraseña); db_comando.CommandText = query; db_lector = db_comando.ExecuteReader(); if (db_lector.Read()) { int nivel_cuenta = db_lector.GetInt32(0); int puntos = db_lector.GetInt32(3); string nombre = db_lector.GetString(4); string apellido = db_lector.GetString(5); string nombre_cuenta = db_lector.GetString(6); txt_Nombre_Cuenta.text = nombre_cuenta.ToString(); txt_level.text = nivel_cuenta.ToString(); txt_exp_total_y_sig_nivel.text = db_lector.GetInt32(1).ToString() + "/" + db_lector.GetInt32(2).ToString(); txt_puntos.text = puntos.ToString(); img_barra_experiencia.fillAmount = (((100 * (float)db_lector.GetInt32(1)) / (float)db_lector.GetInt32(2)) / 100); Global_Session.Nombre = nombre; Global_Session.Apellido = apellido; Global_Session.Puntos = puntos.ToString(); } db_lector.Close(); db_lector = null; db_comando.Dispose(); db_comando = null; db_conexion.Close(); db_conexion = null; }