public void VerificarMovimiento(SessionInstance Session) { if (!Iniciado) { return; } List <SessionInstance> ParaDescalificar = new List <SessionInstance>(); if (!Senderos.Contains(new Point(Session.User.Posicion.x, Session.User.Posicion.y))) { new Thread(() => this.Liana(Session)).Start(); return; } if (Session.User.Posicion.x == 15 && Session.User.Posicion.y == 13) { Iniciado = false; if (Participantes.ContainsKey(Session.User.IDEspacial)) { if (Participantes.Remove(Session.User.IDEspacial)) { Session.User.Jugando = false; Session.User.SenderoOculto = null; CancelarInscripcion(Session); switch (sala.Escenario.id) { case 6: //Golden ServerMessage server = new ServerMessage(); server.AddHead(160); server.AddHead(129); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(Session.User.nombre); server.AppendParameter("Ha ganado: 1 Liana y suma una victoria!"); sala.SendData(server); Session.User.senderos_ganados++; sala.ActualizarEstadisticas(Session.User); EntregarLiana(Session, 1230); RankingsManager.agregar_user_ranking(Session.User.id, 3, 2, 1); break; case 7: //Silver ServerMessage server1 = new ServerMessage(); server1.AddHead(160); server1.AddHead(129); server1.AppendParameter(0); server1.AppendParameter(0); server1.AppendParameter(Session.User.nombre); server1.AppendParameter("Ha ganado: 5 monedas de plata!"); sala.SendData(server1); UserManager.Creditos(Session.User, false, true, Recompensa_Silver); NotificacionesManager.Recompensa_Plata(Session, 5); sala.ActualizarEstadisticas(Session.User); break; } DescalificarUsuarios(); FinalizarSendero(); } } } }
public void DeclararGanador(SessionInstance Session) { if (Participantes.ContainsKey(Session.User.IDEspacial)) { Participantes.Remove(Session.User.IDEspacial); Iniciado = false; CancelarInscripcion(Session); switch (sala.Escenario.modelo) { case 12: //Golden ServerMessage server = new ServerMessage(); server.AddHead(160); server.AddHead(129); server.AppendParameter(1); server.AppendParameter(Session.User.id); server.AppendParameter(Session.User.nombre); server.AppendParameter("Ha ganado: " + GoldenOro + " créditos! y Suma " + Recompensa_Golden + " puntos y mejora su habilidad Ninja."); sala.SendData(server); UserManager.Creditos(Session.User, true, true, GoldenOro); Session.User.puntos_ninja += Recompensa_Golden; sala.ActualizarEstadisticas(Session.User); break; case 13: //Silver ServerMessage server1 = new ServerMessage(); server1.AddHead(160); server1.AddHead(129); server1.AppendParameter(1); server1.AppendParameter(Session.User.id); server1.AppendParameter(Session.User.nombre); server1.AppendParameter("Ha ganado: " + 500 + " monedas de plata"); sala.SendData(server1); UserManager.Creditos(Session.User, false, true, Recompensa_Silver); sala.ActualizarEstadisticas(Session.User); break; } Session.User.mGame12ActualPoints = 0; DescalificarUsuarios(); new Thread(() => FinalizarCamino()).Start(); } }