/// <summary> /// Inicia sesión en el sistema. /// </summary> /// <param name="usuario">Usuario con el que fue registrado el jugador.</param> /// <param name="contrasena">Contraseña con la que se registró el jugador.</param> /// <returns>Si existe un jugador con ese usuario y contraseña regresa el usuario, sino regresa un mensaje de retroalimentación</returns> public string IniciarSesion(string usuarioIngresado, string contrasenaIngresada) { using (BattlesharpEntities BaseDeDatos = new BattlesharpEntities()) { Utilidad utilidad = new Utilidad(); //Primero se verifica que el jugador exista en la base de datos if (utilidad.ExisteUsuario(usuarioIngresado)) { try { //Se busca el jugador que coincida su usario y su contraseña contrasenaIngresada = utilidad.sha256(contrasenaIngresada); var jugadorCoincidente = (from j in BaseDeDatos.jugador where j.usuario.Equals(usuarioIngresado) && j.contrasena.Equals(contrasenaIngresada) select j).SingleOrDefault(); //Se regresa el usuario del jugador para que se muestre en el menú principal return(jugadorCoincidente.usuario); } catch (NullReferenceException) { return("ContrasenaIncorrecta"); } } //Sí no existe el usuario regresa el siguiente mensaje que se usará para mostrarla al cliente else { return("UsuarioNoExiste"); } } }
/// <summary> /// Método que registra un nuevo jugador en el sistema. /// </summary> /// <remarks> /// El usuario con el que se registra el jugador no debe estar registrado previamente. /// </remarks> /// <param name="usuarioIngresado">Usuario que ingresó el jugador para que pueda iniciar sesión posteriormente.</param> /// <param name="contrasenaIngresada">Contraseña que ingresó el jugador para que pueda iniciar sesión posteriormente.</param> /// <param name="nombreIngresado">Nombre del jugador.</param> /// <returns>Mensaje de retroalimentación para dar a conocer el resultado del registro.</returns> public string RegistrarJugador(string usuarioIngresado, string contrasenaIngresada, string nombreIngresado) { Utilidad utilidad = new Utilidad(); using (BattlesharpEntities BaseDeDatos = new BattlesharpEntities()) { //Si no existe un jugador registrado con ese usuario procede a registrarlo if (!utilidad.ExisteUsuario(usuarioIngresado)) { var jugadoresRegistrados = BaseDeDatos.jugador.Count(); //Se crea el jugador con la información pasada por parámetros jugador nuevoJugador = new jugador { idjugador = jugadoresRegistrados, usuario = usuarioIngresado, contrasena = utilidad.sha256(contrasenaIngresada), nombre = nombreIngresado }; //Se registra el jugador en la base de datos BaseDeDatos.jugador.Add(nuevoJugador); //Se guardan los cambios BaseDeDatos.SaveChanges(); //Regresa el mensaje de éxito para ser mostrado en el cliente return("JugadorRegistrado"); } //Si el jugador ya está registrado en la base de datos else { return("UsuarioEnUso"); } } }