Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Type: GameServer.Managers.NoticeManager
- // Assembly: GameServer, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
- // MVID: D7C4FF3D-317F-4E29-9BCF-E342147031EE
- // Assembly location: E:\WarRock\newserver_source\GameServer.exe
- using GameServer;
- using GameServer.Networking.Packets;
- using System;
- using System.Diagnostics;
- using System.Threading;
- namespace GameServer.Managers
- {
- internal class NoticeManager
- {
- private static Thread _NoticeThread = (Thread)null;
- private static Thread _NoticeServerThread = (Thread)null;
- private static string[] _Messages;
- static NoticeManager()
- {
- }
- ~NoticeManager()
- {
- }
- public static bool load()
- {
- try
- {
- NoticeManager._Messages = (string[])null;
- NoticeManager._Messages = DB.runReadColumn("SELECT message FROM notices WHERE deleted='0'", 0);
- if (NoticeManager._NoticeThread == null)
- {
- NoticeManager._NoticeServerThread = new Thread(new ThreadStart(NoticeManager.noticeServerLoop));
- NoticeManager._NoticeServerThread.Priority = ThreadPriority.Lowest;
- NoticeManager._NoticeServerThread.Start();
- }
- else
- NoticeManager._NoticeServerThread.Start();
- if (NoticeManager._NoticeThread == null)
- {
- NoticeManager._NoticeThread = new Thread(new ThreadStart(NoticeManager.noticeLoop));
- NoticeManager._NoticeThread.Priority = ThreadPriority.Lowest;
- NoticeManager._NoticeThread.Start();
- }
- else
- NoticeManager._NoticeThread.Start();
- }
- catch
- {
- GameServer.Log.WriteError("Failed to load the notice manager!");
- }
- return false;
- }
- private static void noticeServerLoop()
- {
- try
- {
- while (Program.Running)
- {
- TimeSpan timeSpan = DateTime.Now - Process.GetCurrentProcess().StartTime;
- UserManager.sendToServer((Packet)new PACKET_CHAT("Server", PACKET_CHAT.ChatType.Notice1, " NOTICE: Server has " + UserManager.getAllUsers().Count + " online players. GameServer online since " + timeSpan.Days.ToString() + " days, " + timeSpan.Hours.ToString() + " hours, " + timeSpan.Minutes.ToString() + " minutes :)", 100L, "NULL"));
- Thread.Sleep(250000);
- }
- }
- catch
- {
- }
- }
- private static void noticeLoop()
- {
- try
- {
- while (Program.Running)
- {
- if (NoticeManager._Messages.Length > 0)
- {
- int index = new Random().Next(0, NoticeManager._Messages.Length - 1);
- UserManager.sendToServer((Packet)new PACKET_CHAT("Server", PACKET_CHAT.ChatType.Notice1, " NOTICE: " + NoticeManager._Messages[index], 100L, "NULL"));
- }
- Thread.Sleep(400000);
- }
- }
- catch
- {
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement