void IniciarCocos() { Iniciado = true; int TotalRondas = 7; List <Point> Puntos = new List <Point>(); while (TotalRondas > 0) { Puntos.Clear(); for (int i = 1; i <= TotalRondas; i++) { Point PosGeneratedByMap = sala.GetRandomPlace(); while (Puntos.Contains(PosGeneratedByMap) || !sala.Caminable(new Posicion(PosGeneratedByMap.X, PosGeneratedByMap.Y))) { PosGeneratedByMap = sala.GetRandomPlace(); } Puntos.Add(PosGeneratedByMap); } TotalRondas--; Thread.Sleep(new TimeSpan(0, 0, 5)); foreach (Point PointToShow in Puntos) { ServerMessage server_1 = new ServerMessage(); server_1.AddHead(124); server_1.AddHead(120); server_1.AppendParameter(PointToShow.X); server_1.AppendParameter(PointToShow.Y); server_1.AppendParameter(1); sala.SendData(server_1); } Thread.Sleep(new TimeSpan(0, 0, 5)); foreach (Point PointToHidden in Puntos) { ServerMessage server_2 = new ServerMessage(); server_2.AddHead(124); server_2.AddHead(121); server_2.AppendParameter(PointToHidden.X); server_2.AppendParameter(PointToHidden.Y); server_2.AppendParameter(1); sala.SendData(server_2); } ServerMessage server_3 = new ServerMessage(); server_3.AddHead(160); server_3.AddHead(125); server_3.AppendParameter(30); sala.SendData(server_3); sala.PathFinder = true; Thread.Sleep(new TimeSpan(0, 0, 30)); sala.PathFinder = false; List <SessionInstance> ParaDescalificar = new List <SessionInstance>(); foreach (SessionInstance Session in Participantes.Values) { if (!Puntos.Contains(new Point(Session.User.Posicion.x, Session.User.Posicion.y))) { ParaDescalificar.Add(Session); } } foreach (SessionInstance Session in ParaDescalificar) { Descalificar(Session); LanzarCoco(Session); UserManager.Sumar_Cocos(Session.User, 1); RankingsManager.agregar_user_ranking(Session.User.id, 2, 2, 1); //using (mysql client = new mysql()) //{ // string Nombre = Session.User.nombre; // if (Nombre == "") { Session.User.nombre = Session.User.nombre_halloween; } // DataRow comprobar_usuario = client.ExecuteQueryRow("SELECT * FROM coco_semanal WHERE usuario = '" + Nombre + "'"); // if (comprobar_usuario != null) // { // int goldens = (int)comprobar_usuario["goldens"]; // int actualizar_goldens = goldens + 1; // client.ExecuteNonQuery("UPDATE coco_semanal SET goldens = '" + actualizar_goldens + "' WHERE usuario = '" + Nombre + "'"); // } // else // { // client.SetParameter("usuario", Nombre); // client.SetParameter("goldens", 1); // client.ExecuteNonQuery("INSERT INTO coco_semanal (`usuario`, `goldens`) VALUES (@usuario, @goldens)"); // } //} } Thread.Sleep(new TimeSpan(0, 0, 10)); if (Participantes.Count == 0 || Participantes.Count == 1) { break; } } if (Participantes.Count == 0) { ServerMessage server_4 = new ServerMessage(); server_4.AddHead(160); server_4.AddHead(124); server_4.AppendParameter("Ups!, al parecer no hay ganadores en esta ronda..."); sala.SendData(server_4); } else { SessionInstance SessionWin = null; foreach (SessionInstance Session in Participantes.Values) { SessionWin = Session; } if (SessionWin != null) { Participantes.Remove(SessionWin.User.id); switch (sala.Escenario.id) { case 8: ServerMessage server_5 = new ServerMessage(); server_5.AddHead(160); server_5.AddHead(129); server_5.AppendParameter(1); server_5.AppendParameter(SessionWin.User.id); server_5.AppendParameter(SessionWin.User.nombre); server_5.AppendParameter("Ha ganado: " + Recompensa_Golden + " créditos! y Suma " + 3 + " puntos y está más cerca de conseguir un nuevo coco!"); sala.SendData(server_5); RankingsManager.agregar_user_ranking(SessionWin.User.id, 2, 2, 3); UserManager.Creditos(SessionWin.User, true, true, Recompensa_Golden); UserManager.Sumar_Cocos(SessionWin.User, 3); SessionWin.User.torneos_coco++; if (SessionWin.User.torneos_coco == 300) { using (mysql client = new mysql()) { client.SetParameter("usuario_id", SessionWin.User.id); client.SetParameter("objeto_id", 3069); client.ExecuteNonQuery("INSERT INTO objetos_comprados (`usuario_id`, `objeto_id`) VALUES (@usuario_id, @objeto_id)"); } } UserManager.ActualizarEstadisticas(SessionWin.User); break; case 9: ServerMessage server_6 = new ServerMessage(); server_6.AddHead(160); server_6.AddHead(129); server_6.AppendParameter(1); server_6.AppendParameter(SessionWin.User.id); server_6.AppendParameter(SessionWin.User.nombre); server_6.AppendParameter("Ha ganado: " + Recompensa_Silver + " monedas de plata! y Suma " + 1 + " puntos y está más cerca de conseguir un nuevo coco!"); sala.SendData(server_6); UserManager.Creditos(SessionWin.User, false, true, Recompensa_Silver); UserManager.Sumar_Cocos(SessionWin.User, 1); break; } SessionWin.User.Jugando = false; } } FinalizarCocos(); }
private static void Method_132_122(SessionInstance Session, string[,] Parameters) { Thread.Sleep(100); Cargar_Bpad(Session); ServerMessage server = new ServerMessage(); server.AddHead(132); server.AddHead(122); using (mysql client = new mysql()) { client.SetParameter("UserID", Session.User.id); foreach (DataRow row in client.ExecuteQueryTable("SELECT * FROM bpad_amigos WHERE ID_1 = @UserID AND Solicitud = '0'").Rows) { UserInstance FriendUser = UserManager.ObtenerUsuario((int)row["ID_2"]); if (FriendUser != null) { server.AppendParameter(FriendUser.id); if (UserManager.UsuariosOnline.ContainsKey(FriendUser.id)) { SessionInstance SessionAmigo = UserManager.ObtenerSession(FriendUser.id); if (SessionAmigo != null) { if (SessionAmigo.User.Sala != null) { if (SessionAmigo.User.Sala.Escenario.id == 70)//Las areas del bosque nevada { server.AppendParameter(1); server.AppendParameter(-1); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(-1); server.AppendParameter(-1); server.AppendParameter(Session.User.Sala.Escenario.id); } else if (SessionAmigo.User.Sala.Escenario.id == 2 && SessionAmigo.User.Sala.Escenario.es_categoria == 2 && SessionAmigo.User.Sala.Escenario.categoria == 5) { server.AppendParameter(1); server.AppendParameter(-1); server.AppendParameter(SessionAmigo.User.Sala.Escenario.es_categoria);//ES_CATEGORIA server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(SessionAmigo.User.Sala.id); server.AppendParameter(0); server.AppendParameter(SessionAmigo.User.Sala.Escenario.nombre); } else { server.AppendParameter(1); server.AppendParameter(-1); server.AppendParameter(SessionAmigo.User.Sala.Escenario.es_categoria);//ES_CATEGORIA server.AppendParameter(0); server.AppendParameter(0); if (Session.User.Sala != null) { if (Session.User.Sala.Escenario.IrAlli == 0) { Thread.Sleep(new TimeSpan(0, 0, 0, 0, 500)); server.AppendParameter(-1); } else { if (Session.User.Sala.Escenario.es_categoria == SessionAmigo.User.Sala.Escenario.es_categoria && Session.User.Sala.id == SessionAmigo.User.Sala.id || SessionAmigo.User.Sala.Escenario.es_categoria == 2) { server.AppendParameter(-1); } else { server.AppendParameter(SessionAmigo.User.Sala.id); } } } else { server.AppendParameter(SessionAmigo.User.Sala.id); } server.AppendParameter(0); server.AppendParameter(SessionAmigo.User.Sala.Escenario.nombre); } } else { server.AppendParameter(1); server.AppendParameter(-1); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(-1); server.AppendParameter(-1); server.AppendParameter("Flower Power"); } } } else { server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(-1); server.AppendParameter(FriendUser.ultima_conexion); } } } } Session.SendData(server); }
public static void Inscribir(SessionInstance Session, int ID) { ServerMessage server = new ServerMessage(); server.AddHead(160); server.AddHead(121); server.AppendParameter(ID); try { if (!FiltroDePago(Session, ID) && MiniGamesHandler.Desactivar_Golden_Minijuegos == false) { if (ID == 8)//Golden { if (Session.User.oro >= CocosInstance.Precio_Golden) { if (!MiniGamesManager.Inscripciones_CocosLocos.ContainsKey(Session.User.id)) { MiniGamesManager.Inscripciones_CocosLocos.Add(Session.User.id, new Inscripcion(Session, 8)); if (MiniGamesManager.Inscripciones_CocosLocos.ContainsKey(Session.User.id)) { server.AppendParameter(1); } } else { server.AppendParameter(-1); } } else { server.AppendParameter(2); } } if (ID == 9)//Silver { server.AppendParameter(-1); if (Session.User.plata >= CocosInstance.Precio_Silver) { if (!MiniGamesManager.Inscripciones_CocosLocos.ContainsKey(Session.User.id)) { MiniGamesManager.Inscripciones_CocosLocos.Add(Session.User.id, new Inscripcion(Session, 9)); if (MiniGamesManager.Inscripciones_CocosLocos.ContainsKey(Session.User.id)) { server.AppendParameter(1); } } else { server.AppendParameter(-1); } } else { server.AppendParameter(2); } } } else { server.AppendParameter(-1); } } catch { server.AppendParameter(-1); } Session.SendData(server); }
private void button2_Click(object sender, EventArgs e) { string texto = ""; label23.Text = textBox6.Text; label25.Text = textBox7.Text; label27.Text = textBox8.Text; if (Convert.ToInt32(textBox6.Text) == 0) { texto = "Error: ID no puede ser nula"; } else { if (Convert.ToInt32(textBox8.Text) < 0 && Convert.ToInt32(textBox7.Text) < 0) { ServerMessage server = new ServerMessage(); server.AddHead(Convert.ToByte(textBox6.Text)); if (textBox9.Text.Contains(",")) { textBox9.Text = textBox9.Text.Replace(",", "³²"); } if (textBox9.Text.Contains(".")) { textBox9.Text = textBox9.Text.Replace(".", "³"); } server.AppendParameter(textBox9.Text); Session.SendData(server); texto = "[" + textBox6.Text + "] > " + textBox9.Text; } else if (Convert.ToInt32(textBox7.Text) > 0 && Convert.ToInt32(textBox8.Text) < 0) { ServerMessage server = new ServerMessage(); server.AddHead(Convert.ToByte(textBox6.Text)); server.AddHead(Convert.ToByte(textBox7.Text)); if (textBox9.Text.Contains(",")) { textBox9.Text = textBox9.Text.Replace(",", "³²"); } if (textBox9.Text.Contains(".")) { textBox9.Text = textBox9.Text.Replace(".", "³"); } server.AppendParameter(textBox9.Text); Session.SendData(server); texto = "[" + textBox6.Text + "/" + textBox7.Text + "] > " + textBox9.Text; } else { ServerMessage server = new ServerMessage(); server.AddHead(Convert.ToByte(textBox6.Text)); server.AddHead(Convert.ToByte(textBox7.Text)); server.AddHead(Convert.ToByte(textBox8.Text)); if (textBox9.Text.Contains(",")) { textBox9.Text = textBox9.Text.Replace(",", "³²"); } if (textBox9.Text.Contains(".")) { textBox9.Text = textBox9.Text.Replace(".", "³"); } server.AppendParameter(textBox9.Text); Session.SendData(server); texto = "[" + textBox6.Text + "/" + textBox7.Text + "/" + textBox8.Text + "] > " + textBox9.Text; } } console_packets = console_packets + texto + Environment.NewLine; richTextBox2.Text = console_packets; }
private static void Method_132_129(SessionInstance Session, string[,] Parameters) { string Usuario = Parameters[0, 0].ToString(); ServerMessage server = new ServerMessage(); server.AddHead(132); server.AddHead(129); UserInstance UserRegister = UserManager.ObtenerUsuario(Usuario); if (UserRegister != null) { UserInstance OtherUser = UserManager.ObtenerUsuario(Usuario); if (OtherUser != null) { server.AppendParameter(1); server.AppendParameter(OtherUser.id); server.AppendParameter(OtherUser.nombre); server.AppendParameter(OtherUser.avatar); server.AppendParameter(OtherUser.colores); if (UserManager.UsuariosOnline.ContainsKey(OtherUser.id)) { SessionInstance OtherSession = UserManager.ObtenerSession(OtherUser.id); if (OtherSession != null) { if (OtherSession.User.Sala != null) { server.AppendParameter(1); server.AppendParameter(-1); server.AppendParameter(OtherSession.User.Sala.Escenario.es_categoria);//ES_CATEGORIA server.AppendParameter(OtherSession.User.Sala.id); server.AppendParameter(OtherSession.User.Sala.id); server.AppendParameter(OtherSession.User.Sala.id); server.AppendParameter(OtherSession.User.Sala.Escenario.nombre); } else { server.AppendParameter(2); server.AppendParameter(2); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(2); server.AppendParameter("Flower Power"); } } } else { server.AppendParameter(-2); server.AppendParameter(-2); server.AppendParameter(-2); server.AppendParameter(-2); server.AppendParameter(-2); server.AppendParameter(-2); server.AppendParameter(OtherUser.ultima_conexion); } server.AppendParameter(OtherUser.edad); server.AppendParameter("BoomBang"); } } else { server.AppendParameter(0); } Session.SendData(server); }
private void Ring() { sala.Entrable = false; while (Contador >= 1) { Contador--; ServerMessage server_1 = new ServerMessage(); server_1.AddHead(160); server_1.AddHead(125); server_1.AppendParameter(Contador); sala.SendData(server_1); Thread.Sleep(new TimeSpan(0, 0, 1)); } if (sala.Usuarios.Count == 1) { this.Iniciado = false; this.NSP = true; ServerMessage server_3 = new ServerMessage(); server_3.AddHead(160); server_3.AddHead(124); server_3.AppendParameter("No hay suficientes jugadores. No te hemos cobrado la partida."); sala.SendData(server_3); Contador = 10; ServerMessage server_4 = new ServerMessage(); server_4.AddHead(160); server_4.AddHead(125); server_4.AppendParameter(Contador); sala.SendData(server_4); } else { this.Iniciado = true; sala.PathFinder = true; ServerMessage server_2 = new ServerMessage();////Sabio pega el taboro fuerte para indicar que ring ha iniciado server_2.AddHead(160); server_2.AddHead(126); sala.SendData(server_2); Contador = 0; //Contador = 480; while (Tiempo_Atas >= 1) { Tiempo_Atas--; if (Tiempo_Atas == 60) { ServerMessage server = new ServerMessage(); server.AddHead(160); server.AddHead(123); sala.SendData(server); } if (Tiempo_Atas == 0) { ServerMessage server_45 = new ServerMessage();////Sabio pega el taboro fuerte para indicar que ring ha iniciado server_45.AddHead(160); server_45.AddHead(126); sala.SendData(server_45); } Thread.Sleep(new TimeSpan(0, 0, 1)); } this.Iniciado = false; if (!Ganador) { ServerMessage server_3 = new ServerMessage(); server_3.AddHead(160); server_3.AddHead(124); server_3.AppendParameter("Se ha acabado el tiempo..."); sala.SendData(server_3); Contador = 10; ServerMessage server_4 = new ServerMessage(); server_4.AddHead(160); server_4.AddHead(125); server_4.AppendParameter(Contador); sala.SendData(server_4); } else { Contador = 30; } } while (Contador >= 1) { Contador--; if (Contador == 10) { ServerMessage server_4 = new ServerMessage(); server_4.AddHead(160); server_4.AddHead(125); server_4.AppendParameter(Contador); sala.SendData(server_4); } Thread.Sleep(new TimeSpan(0, 0, 1)); } sala.ExpusarUsuarios(); Rings.Remove(sala.id); }
private static void Packet_189_124(SessionInstance Session, int IslaID) { ServerMessage server = new ServerMessage(); server.AddHead(189); server.AddHead(124); IslaInstance Isla = IslasManager.ObtenerIsla(IslaID); if (Isla != null) { IslasManager.Diccionario_AñadirIsla(Isla); List <EscenarioInstance> Escenarios = IslasManager.ZonasIsla(Isla); server.AppendParameter(Isla.id); server.AppendParameter(Isla.nombre); server.AppendParameter(Isla.descripcion); server.AppendParameter(Isla.modelo); server.AppendParameter(Isla.uppert); server.AppendParameter(Isla.Creador.id); server.AppendParameter(Isla.Creador.nombre); server.AppendParameter(Isla.Creador.avatar); server.AppendParameter(Isla.Creador.colores); server.AppendParameter(Isla.mamigos_1); server.AppendParameter(Isla.mamigos_2); server.AppendParameter(Isla.mamigos_3); server.AppendParameter(Isla.mamigos_4); server.AppendParameter(Isla.mamigos_5); server.AppendParameter(Isla.mamigos_6); server.AppendParameter(Isla.mamigos_7); server.AppendParameter(Isla.mamigos_8); server.AppendParameter(Isla.noverlo_1); server.AppendParameter(Isla.noverlo_2); server.AppendParameter(Isla.noverlo_3); server.AppendParameter(Isla.noverlo_4); server.AppendParameter(Isla.noverlo_5); server.AppendParameter(Isla.noverlo_6); server.AppendParameter(Isla.noverlo_7); server.AppendParameter(Isla.noverlo_8); server.AppendParameter(Escenarios.Count); foreach (EscenarioInstance Escenario in Escenarios) { server.AppendParameter(0); server.AppendParameter(Escenario.es_categoria); server.AppendParameter(Escenario.id); server.AppendParameter(Escenario.id); server.AppendParameter(Escenario.nombre); server.AppendParameter(Escenario.modelo); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(SalasManager.UsuariosEnSala(Escenario));//Visitantes server.AppendParameter(0); if (Isla.noverlo_1.Contains(Session.User.nombre) || Isla.noverlo_2.Contains(Session.User.nombre) || Isla.noverlo_3.Contains(Session.User.nombre) || Isla.noverlo_4.Contains(Session.User.nombre) || Isla.noverlo_5.Contains(Session.User.nombre) || Isla.noverlo_6.Contains(Session.User.nombre) || Isla.noverlo_7.Contains(Session.User.nombre) || Isla.noverlo_8.Contains(Session.User.nombre)) { server.AppendParameter(1);//Usuario no puede acceder a la isla server.AppendParameter(1); } else { if (Isla.mamigos_1.Contains(Session.User.nombre) || Isla.mamigos_2.Contains(Session.User.nombre) || Isla.mamigos_3.Contains(Session.User.nombre) || Isla.mamigos_4.Contains(Session.User.nombre) || Isla.mamigos_5.Contains(Session.User.nombre) || Isla.mamigos_6.Contains(Session.User.nombre) || Isla.mamigos_7.Contains(Session.User.nombre) || Isla.mamigos_8.Contains(Session.User.nombre)) { server.AppendParameter(0); } else { server.AppendParameter((string.IsNullOrEmpty(Escenario.Clave) ? 0 : 1)); } } } } else { server.AppendParameter(0); } Session.SendData(server); }
private void Sendero() { sala.Entrable = false; while (Contador >= 1) { Contador--; ServerMessage server_1 = new ServerMessage(); server_1.AddHead(160); server_1.AddHead(125); server_1.AppendParameter(Contador); sala.SendData(server_1); Thread.Sleep(new TimeSpan(0, 0, 1)); } if (Participantes.Count <= 1) { ServerMessage server_5 = new ServerMessage(); server_5.AddHead(160); server_5.AddHead(124); server_5.AppendParameter("Ups!, al parecer no hay suficientes jugadores..."); sala.SendData(server_5); this.FinalizarSendero(); return; } if (Participantes.Count >= 3) { this.IniciarSendero(); } this.Iniciado = true; sala.PathFinder = true; ServerMessage server_2 = new ServerMessage(); server_2.AddHead(160); server_2.AddHead(126); sala.SendData(server_2); Contador = 0; while (Tiempo >= 1) { Tiempo--; Thread.Sleep(new TimeSpan(0, 0, 1)); } this.Iniciado = false; if (!Ganador) { ServerMessage server_3 = new ServerMessage(); server_3.AddHead(160); server_3.AddHead(124); server_3.AppendParameter("Se ha acabado el Contador..."); sala.SendData(server_3); foreach (Point PointToShow in Senderos) { ServerMessage server1 = new ServerMessage(); server1.AddHead(124); server1.AddHead(120); server1.AppendParameter(PointToShow.X); server1.AppendParameter(PointToShow.Y); server1.AppendParameter(1); sala.SendData(server1); } } Contador = 30; while (Contador >= 1) { Contador--; if (Contador == 10) { ServerMessage server_4 = new ServerMessage(); server_4.AddHead(160); server_4.AddHead(125); server_4.AppendParameter(Contador); sala.SendData(server_4); } Thread.Sleep(new TimeSpan(0, 0, 1)); } sala.ExpusarUsuarios(); EndSendero.Remove(sala.id); }
public void Descalificar(SessionInstance Session) { if (Participantes.ContainsKey(Session.User.IDEspacial)) { Session.User.Jugando = false; if (sala.Escenario.id == 2 && NSP == false) { UserManager.Creditos(Session.User, true, false, Precio_Golden); Session.User.sala_especial = false; } if (sala.Escenario.id == 3 && NSP == false) { UserManager.Creditos(Session.User, false, false, Precio_Silver); Session.User.sala_especial = false; } Participantes.Remove(Session.User.IDEspacial); if (MiniGamesManager.Inscripciones_Ring.ContainsKey(Session.User.id)) { MiniGamesManager.Inscripciones_Ring.Remove(Session.User.id); } if (Iniciado == true) { if (Participantes.Count == 2) { ServerMessage server = new ServerMessage(); server.AddHead(160); server.AddHead(123); sala.SendData(server); } } if (Participantes.Count == 1 && Iniciado == true) { Ganador = true; Tiempo_Atas = 0; SessionInstance SessionWin = null; foreach (var win in Participantes.Values) { SessionWin = win; } CancelarInscripcion(Session); CancelarInscripcion(SessionWin); if (sala.Escenario.id == 2)///Golden Ring { SessionWin.User.sala_especial = false; SessionWin.User.rings_ganados++; SessionWin.User.toneos_ring++; if (InterfazHandler.Cada_X_Goldens.Contains(SessionWin.User.rings_ganados)) { RegalosManager.Sistema_Regalos(SessionWin); } SessionWin.User.Sala.ActualizarEstadisticas(SessionWin.User); UserManager.Creditos(SessionWin.User, true, true, Recompensa_Golden); ServerMessage server = new ServerMessage(); server.AddHead(160); server.AddHead(129); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(SessionWin.User.nombre); server.AppendParameter("Ha ganado: " + Recompensa_Golden + " créditos! Suma una victoria!"); sala.SendData(server); RankingsManager.agregar_user_ranking(SessionWin.User.id, 1, 2, 1); } if (sala.Escenario.id == 3)//Silver Ring { SessionWin.User.sala_especial = false; SessionWin.User.rings_ganados++; SessionWin.User.Sala.ActualizarEstadisticas(SessionWin.User); UserManager.Creditos(SessionWin.User, false, true, Recompensa_Silver); if (InterfazHandler.Cada_X_Goldens.Contains(SessionWin.User.rings_ganados)) { RegalosManager.Sistema_Regalos(SessionWin); } ServerMessage server = new ServerMessage(); server.AddHead(160); server.AddHead(129); server.AppendParameter(0); server.AppendParameter(0); server.AppendParameter(SessionWin.User.nombre); server.AppendParameter("Ha ganado: " + Recompensa_Silver + " monedas de plata! Suma una victoria!"); sala.SendData(server); RankingsManager.agregar_user_ranking(SessionWin.User.id, 1, 1, 1); } Participantes.Remove(SessionWin.User.IDEspacial); SessionWin.User.Jugando = false; } } }
private static void Open_Puertas(SessionInstance Session, string[,] Parameters) { mysql client = new mysql(); int[] llaves = { 0, 0, 0, 578, 631, 149, 210, 319, 0, 445, 1120, 0, 0 }; string[] puertas = { "puerta_1", "puerta_2", "puerta_3", "puerta_4", "puerta_5", "puerta_6", "puerta_7", "puerta_8", "puerta_9", "puerta_10", "puerta_11", "puerta_12", "puerta_13" }; int id = Convert.ToInt32(Parameters[0, 0]); client.SetParameter("id", llaves[id - 1]); client.SetParameter("user", Session.User.id); DataRow muchila = client.ExecuteQueryRow("SELECT * FROM objetos_comprados WHERE objeto_id = @id AND usuario_id = @user"); if (muchila != null) { client.SetParameter("user", Session.User.id); client.SetParameter("sala", Session.User.Sala.id); client.ExecuteNonQuery("UPDATE escenarios_privados SET " + puertas[id - 1] + " = 1 WHERE CreadorID = @user AND id = @sala AND modelo = 26"); client.SetParameter("user", Session.User.id); client.SetParameter("objeto", llaves[id - 1]); client.ExecuteNonQuery("DELETE FROM objetos_comprados WHERE objeto_id = @objeto AND usuario_id = @user"); ServerMessage Handler_189_175 = new ServerMessage(); Handler_189_175.AddHead(189); Handler_189_175.AddHead(175); Handler_189_175.AppendParameter(1); Handler_189_175.AppendParameter(1); Session.SendData(Handler_189_175); ServerMessage borrar_llave = new ServerMessage(); borrar_llave.AddHead(189); borrar_llave.AddHead(169); borrar_llave.AppendParameter(-1); borrar_llave.AppendParameter(llaves[id - 1]); borrar_llave.AppendParameter(1); Session.SendData(borrar_llave); ServerMessage server = new ServerMessage(); server.AddHead(203); server.AddHead(120); server.AppendParameter(id); server.AppendParameter(4); server.AppendParameter(0); server.AppendParameter(Session.User.Sala.Escenario.id); server.AppendParameter("Puerta1"); server.AppendParameter(1); server.AppendParameter(0); Session.SendData(server); //ServerMessage message2 = new ServerMessage(203, 120); //message2.AppendParameter($"{ide}³²4³²0³²{Session.Doors[ide - 1]}³²Puerta1³²1³²0", false); //instance.BroadcastMessage(message2); SalasManager.Salas_Privadas.Remove(Session.User.Sala.Escenario.id); client.SetParameter("id", Session.User.Sala.Escenario.id); DataRow row = client.ExecuteQueryRow("SELECT * FROM escenarios_privados WHERE id = @id"); EscenarioInstance Escenario = new EscenarioInstance(row); SalasManager.Salas_Privadas.Add(Session.User.Sala.Escenario.id, new SalaInstance(Escenario.id, Escenario)); NotificacionesManager.NotifiChat(Session, "Sabio: Sal al jardin de casita y vuelve a entrar para poder acceder a la puerta."); } }
public static void EjecutarTrampa(SessionInstance Session, TrampaInstance Trampa, bool publica) { if (Session.User != null) { if (Session.User.Sala != null) { if (publica == false) { mysql client = new mysql(); client.SetParameter("modelo", Trampa.modelo); DataRow muchila = client.ExecuteQueryRow("SELECT * FROM objetos_comprados WHERE id = @modelo"); if (muchila != null) { int objeto_id = (int)muchila["objeto_id"]; if (objeto_id == 1230)//Liana { Session.User.Time_Interactuando = Time.GetCurrentAndAdd(AddType.Segundos, 10); Session.User.Trayectoria.DetenerMovimiento(); ServerMessage liana = new ServerMessage(); liana.AddHead(147); liana.AppendParameter(Session.User.IDEspacial); Session.User.Sala.SendData(liana); Thread.Sleep(new TimeSpan(0, 0, 10)); SalasManager.Salir_Sala(Session, true); } else if (objeto_id == 1229)//Coco { Session.User.Time_Interactuando = Time.GetCurrentAndAdd(AddType.Segundos, 6); Session.User.Trayectoria.DetenerMovimiento(); Session.User.Sala.Map[Session.User.Posicion.y, Session.User.Posicion.x].FijarSession(null); ServerMessage coco = new ServerMessage(); coco.AddHead(184); coco.AddHead(120); coco.AppendParameter(Session.User.id); coco.AppendParameter(0); coco.AppendParameter(35); Session.User.Sala.SendData(coco); Thread.Sleep(new TimeSpan(0, 0, 6)); Session.User.Posicion = Trampa.MoverUsuario; ServerMessage server = new ServerMessage(); server.AddHead(135); server.AppendParameter(Session.User.IDEspacial); server.AppendParameter(Session.User.Posicion.x); server.AppendParameter(Session.User.Posicion.y); server.AppendParameter(Session.User.Posicion.z); Session.User.Sala.SendData(server, Session); } else //Portales Magicos { if (Trampa.go_es_categoria >= 0) { if (Trampa.go_escenario_id >= 1) { Session.User.Time_Interactuando = Time.GetCurrentAndAdd(AddType.Segundos, 1); Session.User.Trayectoria.DetenerMovimiento(); Thread.Sleep(new TimeSpan(0, 0, 1)); if (Trampa.go_escenario_posicion.x != -1 && Trampa.go_escenario_posicion.y != -1) { SalasManager.IrAlli(Session, Trampa.go_es_categoria, Trampa.go_escenario_id, Trampa.go_escenario_posicion); return; } SalasManager.IrAlli(Session, Trampa.go_es_categoria, Trampa.go_escenario_id); return; } } } } } else if (publica == true) { if (Trampa.go_es_categoria >= 0) { if (Trampa.go_escenario_id >= 1) { Session.User.Time_Interactuando = Time.GetCurrentAndAdd(AddType.Segundos, 1); Session.User.Trayectoria.DetenerMovimiento(); Thread.Sleep(new TimeSpan(0, 0, 1)); if (Trampa.go_escenario_posicion.x != -1 && Trampa.go_escenario_posicion.y != -1) { SalasManager.IrAlli(Session, Trampa.go_es_categoria, Trampa.go_escenario_id, Trampa.go_escenario_posicion); return; } SalasManager.IrAlli(Session, Trampa.go_es_categoria, Trampa.go_escenario_id); return; } } } } } }
public static void Creditos(UserInstance User, bool Oro, bool sumar, int cantidad) { SessionInstance Session = UserManager.ObtenerSession(User.id); using (mysql client = new mysql()) { client.SetParameter("id", User.id); client.SetParameter("cantidad", cantidad); if (Session != null) { if (Oro) { if (sumar) { if (client.ExecuteNonQuery("UPDATE usuarios SET oro = (oro + @cantidad) WHERE id = @id") == 1) { User.oro += cantidad; ServerMessage server = new ServerMessage(); server.AddHead(162); server.AppendParameter(cantidad); Session.SendData(server); } } else { try { if (client.ExecuteNonQuery("UPDATE usuarios SET oro = (oro - @cantidad) WHERE id = @id") == 1) { User.oro -= cantidad; ServerMessage server = new ServerMessage(); server.AddHead(161); server.AppendParameter(cantidad); Session.SendData(server); } } catch (Exception ex) { Output.WriteLine(ex.ToString()); Program.EditorialResponse(ex); } } } else { if (sumar) { if (client.ExecuteNonQuery("UPDATE usuarios SET plata = (plata + @cantidad) WHERE id = @id") == 1) { User.plata += cantidad; ServerMessage server = new ServerMessage(); server.AddHead(166); server.AppendParameter(cantidad); Session.SendData(server); } } else { if (client.ExecuteNonQuery("UPDATE usuarios SET plata = (plata - @cantidad) WHERE id = @id") == 1) { User.plata -= cantidad; ServerMessage server = new ServerMessage(); server.AddHead(168); server.AppendParameter(cantidad); Session.SendData(server); } } } } } }
public static void IniciarSesion(SessionInstance Session, string user, string pass) { ServerMessage server = new ServerMessage(); server.AddHead(120); server.AddHead(130); Session.User = ObtenerUsuario(user, pass); if (Session.User != null) { if (!usuarioOnline(Session.User)) { UsuariosOnline.Add(Session.User.id, Session); if (Session.User.timespam_regalo_peque == 0) { Session.User.timespam_regalo_peque = Time.GetCurrentAndAdd(AddType.Minutos, 30); } if (Session.User.timespam_desc_cambios != 0) { if (Time.GetDifference(Session.User.timespam_desc_cambios) <= 0) { Session.User.timespam_desc_cambios = 0; Session.User.security = string.Empty; UserManager.ActualizarEstadisticas(Session.User); FlowerHandler.BoomBangTeam(Session, "¡Se ha completado el proceso de desactivación de la clave de seguridad! \rAhora tu cuenta no está totalmente segura."); } } using (mysql client = new mysql()) { client.SetParameter("id", Session.User.id); DataRow row = client.ExecuteQueryRow("SELECT * FROM cuentas_desactivadas WHERE id = @id"); if (row != null) { server.AppendParameter(4); server.AppendParameter("Has desactivado tu cuenta, para reactivarla, presiona el botón"); server.AppendParameter(1); Session.SendDataProtected(server); return; } } ActualizarVipUsuarios(Session); server.AppendParameter(1); server.AppendParameter(Session.User.nombre); server.AppendParameter(Session.User.avatar); server.AppendParameter(Session.User.colores); server.AppendParameter(Session.User.email); server.AppendParameter(Session.User.edad); server.AppendParameter(2); server.AppendParameter("Hola, Soy nuevo en BoomBang."); server.AppendParameter(0); server.AppendParameter(Session.User.id); server.AppendParameter(Session.User.admin); server.AppendParameter(Session.User.oro); server.AppendParameter(Session.User.plata); server.AppendParameter(200); server.AppendParameter(5); server.AppendParameter(0); server.AppendParameter((Time.GetDifference(Session.User.timespam_regalo_peque) <= 0 ? 0 : Time.GetDifference(Session.User.timespam_regalo_peque))); //Regalo pequeño "tiempo de regalo" server.AppendParameter(0); //Creo que es contador demrd server.AppendParameter(0); //Creo que es contador demrd server.AppendParameter(Session.User.tutorial_islas); server.AppendParameter("ES"); server.AppendParameter(1); server.AppendParameter(0); server.AppendParameter(Session.User.vip); server.AppendParameter(Session.User.end_vip); server.AppendParameter((Session.User.ValidarEmail == 0 ? 0 : 1)); ///Validar email / 1 Cambiar Email server.AppendParameter((Session.User.timespam_desc_cambios == 0 ? Session.User.security != "" ? 1 : 0 : 2)); server.AppendParameter(0); //Noticia derecha server.AppendParameter(0); server.AppendParameter(new object[] { 1, 0 }); server.AppendParameter(0); server.AppendParameter(Session.User.cambio_nombre);//Nombre personaje Session.User.AFKManager = 3600; if (Program.ver_conexion_usuarios == true) { Output.WriteLine("[UserManager] -> Se ha conectado el usuario " + Session.User.nombre + "."); } if (Session.User.avatar >= 1 && Session.User.avatar <= 11 && Session.User.colores.Substring(0, 6) == "000000") { Session.User.colores = Session.User.colores.Replace("000000", "FFFFFF"); ActualizarEstadisticas(Session.User); } if (Session.User.avatar >= 8 && Session.User.avatar <= 9 && Session.User.colores.Substring(6, 6) == "000000") { Session.User.colores = Session.User.colores.Replace("000000", "FFFFFF"); ActualizarEstadisticas(Session.User); } ActualizarUsuarios(); Actualizar_conexion(Session.User, Session.IP); repair_gift(Session); new Thread(() => updateOnlineUser(Session)).Start(); new Thread(() => AntiScript(Session)).Start(); } else { Thread.Sleep(new TimeSpan(0, 0, 0, 0, 500)); server.AppendParameter(2); } } else { Thread.Sleep(new TimeSpan(0, 0, 0, 0, 500)); server.AppendParameter(0); } Session.SendDataProtected(server); Program.UpdateTitle(); }
static void Pathfinder() { while (true) { try { foreach (SessionInstance Session in UserManager.UsuariosOnline.Values.ToList()) { if (Session.User.Sala == null) { continue; } if (Session.User.Trayectoria == null) { continue; } if (Session.User.Trayectoria.Movimientos.Count == 0) { continue; } if (Session.User.PreLock_Interactuando == true) { continue; } if (Session.User.PreLock_Caminando == true) { continue; } if (Session.User.Sala.PathFinder == false) { continue; } if (Session.User.contar_pasos > 0) { Session.User.contar_pasos--; } Posicion SiguienteMovimiento = Session.User.Trayectoria.SiguienteMovimiento(); if (!Session.User.Trayectoria.MovementIsVerifield(SiguienteMovimiento)) { continue; } if (SiguienteMovimiento.y < Session.User.Sala.MapSizeY && SiguienteMovimiento.x < Session.User.Sala.MapSizeX) { if (Session.User.Sala.Caminable(SiguienteMovimiento)) { Session.User.Sala.Map[Session.User.Posicion.y, Session.User.Posicion.x].FijarSession(null); Session.User.PreLock_Caminando = true; Session.User.Posicion = SiguienteMovimiento; Session.User.Sala.Map[Session.User.Posicion.y, Session.User.Posicion.x].FijarSession(Session); ServerMessage server = new ServerMessage(); server.AddHead(182); server.AppendParameter(1); server.AppendParameter(Session.User.IDEspacial); server.AppendParameter(SiguienteMovimiento.x); server.AppendParameter(SiguienteMovimiento.y); server.AppendParameter(SiguienteMovimiento.z); server.AppendParameter(750); server.AppendParameter((Session.User.Trayectoria.Movimientos.Count >= 1 ? 1 : 0)); Session.User.Sala.SendData(server, Session); new Thread(() => ConcursosManager.BuscarObjetoCaido(Session, Session.User.Sala)).Start(); new Thread(() => TrampasManager.BuscarTrampa(Session)).Start(); new Thread(() => SalasManager.bosque_oso(Session)).Start(); if (Session.User.Sala.Sendero != null) { new Thread(() => Session.User.Sala.Sendero.VerificarMovimiento(Session)).Start(); } } else { Session.User.Trayectoria.Movimientos.Clear(); Session.User.Trayectoria.BuscarOtroSendero(); } } else { Session.User.Trayectoria.Movimientos.Clear(); Session.User.Trayectoria.BuscarOtroSendero(); } } } catch { continue; } Thread.Sleep(1); } }