Advertisement
Guest User

Untitled

a guest
Dec 28th, 2014
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.36 KB | None | 0 0
  1. // Type: GameServer.Managers.NoticeManager
  2. // Assembly: GameServer, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
  3. // MVID: D7C4FF3D-317F-4E29-9BCF-E342147031EE
  4. // Assembly location: E:\WarRock\newserver_source\GameServer.exe
  5.  
  6. using GameServer;
  7. using GameServer.Networking.Packets;
  8. using System;
  9. using System.Diagnostics;
  10. using System.Threading;
  11.  
  12. namespace GameServer.Managers
  13. {
  14. internal class NoticeManager
  15. {
  16. private static Thread _NoticeThread = (Thread)null;
  17. private static Thread _NoticeServerThread = (Thread)null;
  18. private static string[] _Messages;
  19.  
  20. static NoticeManager()
  21. {
  22. }
  23.  
  24. ~NoticeManager()
  25. {
  26. }
  27.  
  28. public static bool load()
  29. {
  30. try
  31. {
  32. NoticeManager._Messages = (string[])null;
  33. NoticeManager._Messages = DB.runReadColumn("SELECT message FROM notices WHERE deleted='0'", 0);
  34. if (NoticeManager._NoticeThread == null)
  35. {
  36. NoticeManager._NoticeServerThread = new Thread(new ThreadStart(NoticeManager.noticeServerLoop));
  37. NoticeManager._NoticeServerThread.Priority = ThreadPriority.Lowest;
  38. NoticeManager._NoticeServerThread.Start();
  39. }
  40. else
  41. NoticeManager._NoticeServerThread.Start();
  42. if (NoticeManager._NoticeThread == null)
  43. {
  44. NoticeManager._NoticeThread = new Thread(new ThreadStart(NoticeManager.noticeLoop));
  45. NoticeManager._NoticeThread.Priority = ThreadPriority.Lowest;
  46. NoticeManager._NoticeThread.Start();
  47. }
  48. else
  49. NoticeManager._NoticeThread.Start();
  50. }
  51. catch
  52. {
  53. GameServer.Log.WriteError("Failed to load the notice manager!");
  54. }
  55. return false;
  56. }
  57.  
  58. private static void noticeServerLoop()
  59. {
  60. try
  61. {
  62. while (Program.Running)
  63. {
  64. TimeSpan timeSpan = DateTime.Now - Process.GetCurrentProcess().StartTime;
  65. 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"));
  66. Thread.Sleep(250000);
  67. }
  68. }
  69. catch
  70. {
  71. }
  72. }
  73.  
  74. private static void noticeLoop()
  75. {
  76. try
  77. {
  78. while (Program.Running)
  79. {
  80. if (NoticeManager._Messages.Length > 0)
  81. {
  82. int index = new Random().Next(0, NoticeManager._Messages.Length - 1);
  83. UserManager.sendToServer((Packet)new PACKET_CHAT("Server", PACKET_CHAT.ChatType.Notice1, " NOTICE: " + NoticeManager._Messages[index], 100L, "NULL"));
  84. }
  85. Thread.Sleep(400000);
  86. }
  87. }
  88. catch
  89. {
  90. }
  91. }
  92. }
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement