Advertisement
Guest User

Untitled

a guest
Mar 18th, 2017
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 8.50 KB | None | 0 0
  1.  
  2. using log4net;
  3.  
  4. using Plus.Communication.Packets;
  5. using Plus.HabboHotel.GameClients;
  6. using Plus.HabboHotel.Moderation;
  7. using Plus.HabboHotel.Support;
  8. using Plus.HabboHotel.Catalog;
  9. using Plus.HabboHotel.Items;
  10. using Plus.HabboHotel.Items.Televisions;
  11. using Plus.HabboHotel.Navigator;
  12. using Plus.HabboHotel.Rooms;
  13. using Plus.HabboHotel.Groups;
  14. using Plus.HabboHotel.Quests;
  15. using Plus.HabboHotel.Achievements;
  16. using Plus.HabboHotel.LandingView;
  17. using Plus.HabboHotel.Global;
  18.  
  19. using Plus.HabboHotel.Games;
  20.  
  21. using Plus.HabboHotel.Rooms.Chat;
  22. using Plus.HabboHotel.Talents;
  23. using Plus.HabboHotel.Bots;
  24. using Plus.HabboHotel.Cache;
  25. using Plus.HabboHotel.Rewards;
  26. using Plus.HabboHotel.Badges;
  27. using Plus.HabboHotel.Permissions;
  28. using Plus.HabboHotel.Subscriptions;
  29. using System.Threading;
  30. using System.Threading.Tasks;
  31. using Plus.HabboHotel.Camera;
  32.  
  33. namespace Plus.HabboHotel
  34. {
  35.     public class Game
  36.     {
  37.         private static readonly ILog log = LogManager.GetLogger("Plus.HabboHotel.Game");
  38.  
  39.         private readonly PacketManager _packetManager;
  40.         private readonly GameClientManager _clientManager;
  41.         private readonly ModerationManager _modManager;
  42.         private readonly ModerationTool _moderationTool;//TODO: Initialize from the moderation manager.
  43.         private readonly ItemDataManager _itemDataManager;
  44.         private readonly CatalogManager _catalogManager;
  45.         private readonly TelevisionManager _televisionManager;//TODO: Initialize from the item manager.
  46.         private readonly NavigatorManager _navigatorManager;
  47.         private readonly RoomManager _roomManager;
  48.         private readonly ChatManager _chatManager;
  49.         private readonly GroupManager _groupManager;
  50.         private readonly QuestManager _questManager;
  51.         private readonly AchievementManager _achievementManager;
  52.         private readonly TalentTrackManager _talentTrackManager;
  53.         private readonly LandingViewManager _landingViewManager;//TODO: Rename class
  54.         private readonly GameDataManager _gameDataManager;
  55.         private readonly ServerStatusUpdater _globalUpdater;
  56.         private readonly LanguageLocale _languageLocale;
  57.         private readonly AntiMutant _antiMutant;
  58.         private readonly BotManager _botManager;
  59.         private readonly CacheManager _cacheManager;
  60.         private readonly RewardManager _rewardManager;
  61.         private readonly BadgeManager _badgeManager;
  62.         private readonly PermissionManager _permissionManager;
  63.         private readonly SubscriptionManager _subscriptionManager;
  64.         private readonly GroupForumManager _groupForumManager;
  65.  
  66.  
  67.         private readonly CameraPhotoManager _cameraManager;
  68.  
  69.         private bool _cycleEnded;
  70.         private bool _cycleActive;
  71.         private Task _gameCycle;
  72.         private int _cycleSleepTime = 25;
  73.  
  74.         public Game()
  75.         {
  76.             this._packetManager = new PacketManager();
  77.             this._clientManager = new GameClientManager();
  78.             this._modManager = new ModerationManager();
  79.             this._moderationTool = new ModerationTool();
  80.  
  81.             this._itemDataManager = new ItemDataManager();
  82.             this._itemDataManager.Init();
  83.  
  84.             this._catalogManager = new CatalogManager();
  85.             this._catalogManager.Init(this._itemDataManager);
  86.  
  87.             this._televisionManager = new TelevisionManager();
  88.  
  89.             this._navigatorManager = new NavigatorManager();
  90.             this._roomManager = new RoomManager();
  91.             this._chatManager = new ChatManager();
  92.             this._groupManager = new GroupManager();
  93.             this._questManager = new QuestManager();
  94.             this._achievementManager = new AchievementManager();
  95.             this._talentTrackManager = new TalentTrackManager();
  96.  
  97.             this._landingViewManager = new LandingViewManager();
  98.             this._gameDataManager = new GameDataManager();
  99.  
  100.             this._globalUpdater = new ServerStatusUpdater();
  101.             this._globalUpdater.Init();
  102.  
  103.             this._languageLocale = new LanguageLocale();
  104.             this._antiMutant = new AntiMutant();
  105.             this._botManager = new BotManager();
  106.  
  107.             this._cacheManager = new CacheManager();
  108.             this._rewardManager = new RewardManager();
  109.  
  110.             this._badgeManager = new BadgeManager();
  111.             this._badgeManager.Init();
  112.  
  113.             this._permissionManager = new PermissionManager();
  114.             this._permissionManager.Init();
  115.  
  116.             this._subscriptionManager = new SubscriptionManager();
  117.             this._subscriptionManager.Init();
  118.  
  119.             this._groupForumManager = new GroupForumManager();
  120.  
  121.             this._cameraManager = new CameraPhotoManager();
  122.             this._cameraManager.Init(this._itemDataManager);
  123.  
  124.         }
  125.  
  126.         public void StartGameLoop()
  127.         {
  128.             this._gameCycle = new Task(GameCycle);
  129.             this._gameCycle.Start();
  130.  
  131.             this._cycleActive = true;
  132.         }
  133.  
  134.         private void GameCycle()
  135.         {
  136.             while (this._cycleActive)
  137.             {
  138.                 this._cycleEnded = false;
  139.  
  140.                 PlusEnvironment.GetGame().GetRoomManager().OnCycle();
  141.                 PlusEnvironment.GetGame().GetClientManager().OnCycle();
  142.  
  143.                 this._cycleEnded = true;
  144.                 Thread.Sleep(this._cycleSleepTime);
  145.             }
  146.         }
  147.  
  148.         public void StopGameLoop()
  149.         {
  150.             this._cycleActive = false;
  151.  
  152.             while (!this._cycleEnded)
  153.             {
  154.                 Thread.Sleep(this._cycleSleepTime);
  155.             }
  156.         }
  157.  
  158.         public PacketManager GetPacketManager()
  159.         {
  160.             return _packetManager;
  161.         }
  162.  
  163.         public GroupForumManager GetGroupForumManager()
  164.  
  165.         {
  166.  
  167.             return _groupForumManager;
  168.  
  169.         }
  170.  
  171.         public GameClientManager GetClientManager()
  172.         {
  173.             return _clientManager;
  174.         }
  175.  
  176.         public CatalogManager GetCatalog()
  177.         {
  178.             return _catalogManager;
  179.         }
  180.  
  181.         public NavigatorManager GetNavigator()
  182.         {
  183.             return _navigatorManager;
  184.         }
  185.  
  186.         public ItemDataManager GetItemManager()
  187.         {
  188.             return _itemDataManager;
  189.         }
  190.  
  191.         public RoomManager GetRoomManager()
  192.         {
  193.             return _roomManager;
  194.         }
  195.  
  196.         public AchievementManager GetAchievementManager()
  197.         {
  198.             return _achievementManager;
  199.         }
  200.  
  201.         public TalentTrackManager GetTalentTrackManager()
  202.         {
  203.             return _talentTrackManager;
  204.         }
  205.  
  206.         public ModerationTool GetModerationTool()
  207.         {
  208.             return _moderationTool;
  209.         }
  210.  
  211.         public ModerationManager GetModerationManager()
  212.         {
  213.             return this._modManager;
  214.         }
  215.  
  216.         public PermissionManager GetPermissionManager()
  217.         {
  218.             return this._permissionManager;
  219.         }
  220.  
  221.         public SubscriptionManager GetSubscriptionManager()
  222.         {
  223.             return this._subscriptionManager;
  224.         }
  225.  
  226.        
  227.  
  228.         public QuestManager GetQuestManager()
  229.         {
  230.             return this._questManager;
  231.         }
  232.  
  233.         public GroupManager GetGroupManager()
  234.         {
  235.             return _groupManager;
  236.         }
  237.  
  238.         public LandingViewManager GetLandingManager()
  239.         {
  240.             return _landingViewManager;
  241.         }
  242.         public TelevisionManager GetTelevisionManager()
  243.         {
  244.             return _televisionManager;
  245.         }
  246.  
  247.         public ChatManager GetChatManager()
  248.         {
  249.             return this._chatManager;
  250.         }
  251.  
  252.         public GameDataManager GetGameDataManager()
  253.         {
  254.             return this._gameDataManager;
  255.         }
  256.  
  257.         public LanguageLocale GetLanguageLocale()
  258.         {
  259.             return this._languageLocale;
  260.         }
  261.  
  262.         public AntiMutant GetAntiMutant()
  263.         {
  264.             return this._antiMutant;
  265.         }
  266.  
  267.         public BotManager GetBotManager()
  268.         {
  269.             return this._botManager;
  270.         }
  271.  
  272.         public CacheManager GetCacheManager()
  273.         {
  274.             return this._cacheManager;
  275.         }
  276.  
  277.         public RewardManager GetRewardManager()
  278.         {
  279.             return this._rewardManager;
  280.         }
  281.  
  282.         public BadgeManager GetBadgeManager()
  283.         {
  284.             return this._badgeManager;
  285.         }
  286.  
  287.         public CameraPhotoManager GetCameraManager()
  288.         {
  289.         return this._cameraManager;
  290.         }
  291.  
  292. }
  293. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement