protected internal override void write()
 {
     base.writeH(2049);
     base.writeD(5404);
     base.writeB(IPAddress.Parse(Config.GAME_HOST).GetAddressBytes());
     base.writeH(29890);
     base.writeH(32759);
     for (int i = 0; i < 10; i++)
     {
         base.writeC(1);
     }
     base.writeC(1);
     base.writeD(GameServerInfoHolder.getInstance().getAllGameserverInfos().Count);
     foreach (GameServerInfo current in GameServerInfoHolder.getInstance().getAllGameserverInfos())
     {
         base.writeD(1);
         base.writeB(IPAddress.Parse(current.getIP()).GetAddressBytes());
         base.writeH((short)Config.GAME_PORT);
         base.writeC((byte)current.getTypeGameServer());
         base.writeH((short)current.getMaxPlayers());
         foreach (Channel current2 in ChannelInfoHolder.getAllChannels())
         {
             bool flag = current2.getServerName() == current.getServerName();
             if (flag)
             {
                 this.players += current2.getAllPlayers().Count;
             }
         }
         base.writeD(this.players);
     }
     base.writeC(0);
     base.writeD(0);
     base.writeD(0);
     base.writeD(0);
 }
Exemple #2
0
        public GameServerInfoParser()
        {
            bool flag = this._holder == null;

            if (flag)
            {
                this._holder = GameServerInfoHolder.getInstance();
            }
            string text  = "Data//GameServers.xml";
            bool   flag2 = File.Exists(text);

            if (flag2)
            {
                this.parse(text);
            }
            else
            {
                CLogger.getInstance().info("[GameServerInfoParser]: No Have File: " + text);
            }
            bool flag3 = this._holder != null;

            if (flag3)
            {
                this._holder.log();
            }
        }
Exemple #3
0
 public static void Load()
 {
     LoginClientManager.getInstance();
     PlayerTemplateParser.getInstance();
     GameServerInfoParser.getInstance();
     StartedInventoryItemsParser.getInstance();
     RankExpInfoParser.getInstance();
     StartedInventoryItemsHolder.getInstance();
     TutorialParser.Load();
     PlayerTemplateHolder.getInstance();
     GameServerInfoHolder.getInstance();
     RankExpInfoHolder.getInstance();
 }
Exemple #4
0
        protected internal override void write()
        {
            CLogger.getInstance().info("Send: PROTOCOL_BASE_GET_SCHANNELLIST_ACK");
            this.writeH((short)2049);
            this.writeD(5404);
            this.writeB(new byte[4]
            {
                (byte)1,
                (byte)0,
                (byte)0,
                (byte)127
            });
            this.writeH((short)29890);
            this.writeH((short)32759);
            for (int index = 0; index < 10; ++index) //10
            {
                this.writeC((byte)1);
            }
            this.writeC((byte)1);
            int count1 = GameServerInfoHolder.getInstance().getAllGameserverInfos().Count;

            this.writeD(count1);
            for (int index = 0; index < 2; ++index)
            {
                this.writeD(GameServerInfoHolder.getInstance().getAllGameserverInfos().Count);
                this.writeB(IPAddress.Parse(Config.GAME_HOST).GetAddressBytes());
                this.writeH((short)Config.GAME_PORT);
                this.writeC((byte)GameServerInfoHolder.getInstance().getGameServerInfo(index).getTypeGameServer());
                this.writeH((short)GameServerInfoHolder.getInstance().getGameServerInfo(index).getMaxPlayers());
                this.writeD(0);
            }
            int count2 = 0; // ХЗ небыло пока > 0

            this.writeH((short)count2);
            for (int i = 0; i < count2; i++)
            {
                this.writeH(0);
                this.writeD(0);
                this.writeD(0);
            }

            int count3 = 1; // ХЗ на руоффе тут 1

            this.writeC((byte)count3);
            for (int i = 0; i < count3; i++)
            {
                writeB(new byte[12]); // Всегда в конце нули. Руофф.
            }
        }
Exemple #5
0
        public GameServerInfoParser()
        {
            if (this._holder == null)
            {
                this._holder = GameServerInfoHolder.getInstance();
            }
            string path = "data//gameservers.xml";

            if (File.Exists(path))
            {
                this.parse(path);
            }
            else
            {
                CLogger.getInstance().info("[GameServerInfoParser]: No Have File: " + path);
            }
            if (this._holder == null)
            {
                return;
            }
            this._holder.log();
        }