static void Sestema_Catalago_Manager() { DayOfWeek day = DateTime.Now.DayOfWeek; DateTime time = DateTime.Now; string dayToday = day.ToString(); if (dayToday == "Friday" && Catalago_Viernes == true && time.Hour == 0)//Friday { Catalago_Viernes = false; mysql client = new mysql(); Random random = new Random(); new Thread(() => client.ExecuteNonQuery("UPDATE objetos SET limitado = 0 WHERE limitado = 1")).Start(); int Objeto = listas.Lista_Todos_Objetos_Oro.Count; if (Objeto <= 0) { return; } for (int i = 0; i < 11; i++) { int Obtener_Objeto = random.Next(Objeto); int idRandom = listas.Lista_Todos_Objetos_Oro[Obtener_Objeto]; new Thread(() => client.ExecuteNonQuery("UPDATE objetos SET limitado = 1 WHERE id = '" + idRandom + "'")).Start(); } Output.WriteLine("[BoomBang Manager] -> El catalago ha sido renovado."); new Thread(() => Noticia_Query(client, "¡Catalago Viernes!", "Ya están disponibles los nuevos objetos con un descuento del 20% en set New!. Echale un vistazo y aprovecha las ofertas que tenemos en nuestra SHOP y también las actualizaciones de cada viernes.")).Start();//Poner noticia } if (dayToday == "Saturday" && Catalago_Viernes == false) { Catalago_Viernes = true; } }
static void Noticia_Query(mysql client, string titulo, string contenido) { client.SetParameter("titulo", titulo); client.SetParameter("contenido", contenido); client.SetParameter("tipo_plantilla", 3); client.SetParameter("url_1", ""); client.SetParameter("fecha", DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day); client.ExecuteNonQuery("INSERT INTO noticias (`titulo`, `contenido`, `tipo_plantilla`, `url_1`, `fecha`) VALUES (@titulo, @contenido, @tipo_plantilla, @url_1, @fecha)"); client.ExecuteNonQuery("UPDATE usuarios SET novedades_noticias = 1"); Output.WriteLine("[BoomBang Manager] -> La noticia de Loteria ha sido publicada."); }
static void Entrega_Loteria() { mysql client = new mysql(); int total_tickets = 0; bool usuario_online = false; foreach (DataRow row in client.ExecuteQueryTable("SELECT * FROM objetos_comprados WHERE objeto_id = 871").Rows) { total_tickets++; } if (total_tickets == 0) { Publicar_Noticia_Loteria(true, "", 0); } if (total_tickets > 0) { Random numero = new Random(); int numero_ganador = numero.Next(1, total_tickets + 1); DataRow sacar_el_numero = client.ExecuteQueryRow("SELECT * FROM objetos_comprados WHERE loteria_numero = '" + numero_ganador + "'"); if (sacar_el_numero != null) { foreach (SessionInstance Session in UserManager.UsuariosOnline.Values) { if (Session.User.id == (int)sacar_el_numero["usuario_id"]) { int oro_premio = (250 * total_tickets) + 5000; SessionInstance OtherSession = UserManager.ObtenerSession((int)sacar_el_numero["usuario_id"]); UserManager.Creditos(OtherSession.User, true, true, oro_premio); Publicar_Noticia_Loteria(false, OtherSession.User.nombre, oro_premio); client.ExecuteNonQuery("DELETE FROM objetos_comprados WHERE objeto_id = 871"); Output.WriteLine("[BoomBang Manager] -> Los premios de Loteria han sido entregados."); usuario_online = true; } } if (usuario_online == true) { return; } DataRow busca_nombre_jugador = client.ExecuteQueryRow("SELECT * FROM usuarios WHERE id = '" + (int)sacar_el_numero["usuario_id"] + "'"); int oro_usuario = (int)busca_nombre_jugador["oro"]; int oro_ganado = oro_usuario + ((250 * total_tickets) + 5000); client.ExecuteNonQuery("UPDATE usuarios SET oro = '" + oro_ganado + "' WHERE id = '" + (int)sacar_el_numero["usuario_id"] + "'"); client.ExecuteNonQuery("DELETE FROM objetos_comprados WHERE objeto_id = 871"); Publicar_Noticia_Loteria(false, (string)busca_nombre_jugador["nombre"], 250 * total_tickets + 5000); Output.WriteLine("[BoomBang Manager] -> Los premios de Loteria han sido entregados."); } } }
static void Sestema_Loteria_Semanal_Manager() { foreach (var Sala in SalasManager.Salas_Publicas.Values) { if (Sala.Escenario.nombre != "Beluga Beach") { return; } if (Time.GetDifference(Sala.Escenario.loteria_semanal) <= 0)//Entrega Loteria Semanal { mysql client = new mysql(); Sala.Escenario.loteria_semanal = Time.GetCurrentAndAdd(AddType.Dias, 7); new Thread(() => client.ExecuteNonQuery("UPDATE escenarios_publicos SET loteria_semanal = '" + Sala.Escenario.loteria_semanal + "'")).Start(); Entrega_Loteria(); Output.WriteLine("[BoomBang Manager] -> Ha terminado la Loteria semanal."); } } }