/// <summary> /// Actualiza las estadísticas en el juego de un jugador. /// </summary> /// <param name="jugador">Jugador a actualizar estadísticas</param> /// <exception cref="DbUpdateException"></exception> public void ActualizarEstadisticasDeJugador(Dominio.Jugador jugador) { Jugador jugadorBuscado = baseDeDatos.Jugador.Find(jugador.Nickname); jugadorBuscado.PuntajeTotal += jugador.PuntajeTotal; jugadorBuscado.PartidasJugadas += 1; jugadorBuscado.PartidasGanadas += 1; int experienciaCalculada = 75 + jugador.PuntajeTotal; jugadorBuscado.Experiencia += experienciaCalculada; int nivelCalculado = CalcularNuevoNivel((int)jugadorBuscado.Experiencia); jugadorBuscado.Nivel = nivelCalculado; try { baseDeDatos.SaveChanges(); } catch (DbUpdateException) { throw new DbUpdateException("Error al agregar nuevo jugador"); } }
/// <summary> /// Guarda un nuevo jugador en la base de datos /// </summary> /// <param name="nuevoJugador">Nuevo jugador a guardar</param> /// <exception cref="DbUpdateException"></exception> public void GuardarJugador(Dominio.Jugador nuevoJugador) { Jugador entidadJugador = new Jugador { Nickname = nuevoJugador.Nickname, CorreoElectronico = nuevoJugador.CorreoElectronico, Contraseña = AdministradorHash.GenerarHash(nuevoJugador.Contraseña), Nivel = 1, Experiencia = 0, PartidasGanadas = 0, PartidasJugadas = 0, PuntajeTotal = 0 }; baseDeDatos.Jugador.Add(entidadJugador); try { baseDeDatos.SaveChanges(); } catch (DbUpdateException) { throw new DbUpdateException("Error al agregar nuevo jugador"); } }
private void NotificarJugadorEliminado(Sala salaActual, Dominio.Jugador jugadorASacar) { foreach (var jugador in salaActual.JugadoresEnSala) { jugador.Value.SacarJugador(jugadorASacar); } }
/// <summary> /// Nusca un jugador registrado en el sistema /// </summary> /// <param name="nickname">Nickname del jugador que se desea buscar</param> public void BuscarJugador(string nickname) { AdminDatosJugador adminDatosJugador = new AdminDatosJugador(); Dominio.Jugador jugadorBuscado = adminDatosJugador.ObtenerJugador(nickname); PerfilCallback.ObtenerInformacionJugador(jugadorBuscado); }
private bool EsCreadorDeLaSala(Sala sala, Dominio.Jugador jugador) { bool esCreador = false; if (sala.CreadaPor.Equals(jugador.Nickname)) { esCreador = true; } return(esCreador); }
/// <summary> /// Actualiza la contraseña de un Jugador. /// </summary> /// <param name="jugadorActualizado">Jugador que cambia su contraseña</param> /// <param name="contrasenia">La nueva contraseña</param> public void ActualizarContrasenia(Dominio.Jugador jugadorActualizado, string contrasenia) { var jugadorBuscado = baseDeDatos.Jugador.Where(jugador => jugador.CorreoElectronico.Equals(jugadorActualizado.CorreoElectronico)).FirstOrDefault <Jugador>(); jugadorBuscado.Contraseña = AdministradorHash.GenerarHash(contrasenia); try { baseDeDatos.SaveChanges(); } catch (DbUpdateException) { throw new DbUpdateException("Error al agregar nuevo jugador"); } }
/// <summary> /// Obtiene un <c>Dominio.Jugador</c> de la base de datos al que le pertenece la identificacion de argumento /// </summary> /// <param name="playerID"></param> /// <returns>reotrna un valor <c>Dominio.Jugador</c></returns> /// <exception> /// Esta excepcion puede retornar una excepcion tipo DBUpdateException /// </exception> public Dominio.Jugador GetDomainPlayerByID(int playerID) { Jugador queriedPlayer = null; queriedPlayer = dataBase.Jugador.Find(playerID); Dominio.Jugador matchedPlayer = new Dominio.Jugador { Apodo = queriedPlayer.apodo, Contrasenia = queriedPlayer.contrasenia, CorreoElectronico = queriedPlayer.correoElectronico, Status = queriedPlayer.status, RespuestaConfirmacion = queriedPlayer.respuestaConfirmacion, PreguntaRecuperacion = queriedPlayer.preguntaRecuperacion, PinConfirmacion = queriedPlayer.pinConfirmacion, IdCreador = queriedPlayer.idCreador, IdLenguaje = queriedPlayer.idioma }; return(matchedPlayer); }
/// <summary> /// Obtiene un Jugador. /// </summary> /// <param name="nickname">Nickname del jugador a obtener</param> /// <returns>Jugador buscado</returns> public Dominio.Jugador ObtenerJugador(string nickname) { Dominio.Jugador jugador = null; var jugadorBuscado = baseDeDatos.Jugador.Find(nickname); if (jugadorBuscado != null) { jugador = new Dominio.Jugador { Nickname = nickname, CorreoElectronico = jugadorBuscado.CorreoElectronico, PuntajeTotal = (int)jugadorBuscado.PuntajeTotal, Nivel = jugadorBuscado.Nivel, Experiencia = (int)jugadorBuscado.Experiencia, PartidasGanadas = (int)jugadorBuscado.PartidasGanadas, PartidasJugadas = (int)jugadorBuscado.PartidasJugadas }; } return(jugador); }
public void GetActualPlayer(Dominio.Jugador actualPlayer) { base.Channel.GetActualPlayer(actualPlayer); }
/// <summary> /// Saca al jugador de los jugadores en la partida. /// </summary> /// <param name="jugador">Jugador a sacar</param> public void SacarJugador(Dominio.Jugador jugador) { JugadoresEnPartida.Remove(jugador); }
public System.Threading.Tasks.Task LoginAsync(Dominio.Jugador player) { return(base.Channel.LoginAsync(player)); }
public System.Threading.Tasks.Task CreateMatchAsync(Dominio.Jugador currentPlayer, Contratos.CheckersGameMode gameMode) { return(base.Channel.CreateMatchAsync(currentPlayer, gameMode)); }
public void CreateMatch(Dominio.Jugador currentPlayer, Contratos.CheckersGameMode gameMode) { base.Channel.CreateMatch(currentPlayer, gameMode); }
public System.Threading.Tasks.Task GetActualPlayerAsync(Dominio.Jugador actualPlayer) { return(base.Channel.GetActualPlayerAsync(actualPlayer)); }
public System.Threading.Tasks.Task SendMailAsync(Dominio.Jugador player) { return(base.Channel.SendMailAsync(player)); }
public void SendMail(Dominio.Jugador player) { base.Channel.SendMail(player); }
public System.Threading.Tasks.Task VerifyPlayerAsync(Dominio.Jugador player) { return(base.Channel.VerifyPlayerAsync(player)); }
public void VerifyPlayer(Dominio.Jugador player) { base.Channel.VerifyPlayer(player); }
public void SavePlayer(Dominio.Jugador player) { base.Channel.SavePlayer(player); }
public void LoginPlayer(Dominio.Jugador player) { base.Channel.LoginPlayer(player); }