コード例 #1
0
        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;
            }
        }