internal GameClientManager() { clients = new Dictionary <uint, GameClient>(); clientsAddQueue = new Queue(); clientsToRemove = new Queue(); creditQueuee = new Queue(); badgeQueue = new Queue(); authorizedPacketSending = new Queue(); broadcastQueue = new Queue(); timedOutConnections = new Queue(); usernameRegister = new Hashtable(); userIDRegister = new Hashtable(); usernameIdRegister = new Hashtable(); idUsernameRegister = new Hashtable(); Thread timeOutThread = new Thread(new ThreadStart(HandleTimeouts)); timeOutThread.Start(); pingInterval = int.Parse(ButterflyEnvironment.GetConfig().data["client.ping.interval"]); if (ButterflyEnvironment.GetConfig().data.ContainsKey("game.pixel.enabled")) { cyclePixelsEnabled = (ButterflyEnvironment.GetConfig().data["game.pixel.enabled"] == "true"); cyclePixelsAmount = int.Parse(ButterflyEnvironment.GetConfig().data["game.pixel.amount"]); cyclePixelsTime = int.Parse(ButterflyEnvironment.GetConfig().data["game.pixel.time"]) * 1000; pixelsOnLogin = int.Parse(ButterflyEnvironment.GetConfig().data["game.login.pixel.receiveamount"]); } else { cyclePixelsEnabled = false; cyclePixelsAmount = 0; cyclePixelsTime = 0; pixelsOnLogin = 0; } if (ButterflyEnvironment.GetConfig().data.ContainsKey("game.credits.enabled")) { cycleCreditsEnabled = (ButterflyEnvironment.GetConfig().data["game.credits.enabled"] == "true"); cycleCreditsAmount = int.Parse(ButterflyEnvironment.GetConfig().data["game.credits.amount"]); cycleCreditsTime = int.Parse(ButterflyEnvironment.GetConfig().data["game.credits.time"]) * 1000; creditsOnLogin = int.Parse(ButterflyEnvironment.GetConfig().data["game.login.credits.receiveamount"]); } else { cycleCreditsEnabled = false; cycleCreditsAmount = 0; cycleCreditsTime = 0; creditsOnLogin = 0; } }