public FightServerConnector(BattleServer server, string ip, int port, string key)
     : base(ip, port, true, new byte[2048], new byte[2048])
 {
     m_server = server;
     m_key = key;
     Strict = true;
 }
Esempio n. 2
0
 public FightServerConnector(BattleServer server, string ip, int port, string key)
     : base(ip, port, true, new byte[2048], new byte[2048])
 {
     m_server = server;
     m_key    = key;
     Strict   = true;
 }
Esempio n. 3
0
 public static void AddBattleServer(BattleServer server)
 {
     if (server != null)
     {
         BattleMgr.m_list.Add(server);
         server.Disconnected += new EventHandler(BattleMgr.battle_Disconnected);
     }
 }
Esempio n. 4
0
 public static void RemoveServer(BattleServer server)
 {
     if (server != null)
     {
         BattleMgr.m_list.Remove(server);
         server.Disconnected -= new EventHandler(BattleMgr.battle_Disconnected);
         server.Stop();
     }
 }
Esempio n. 5
0
        public static BattleServer AddRoom(BaseRoom room)
        {
            BattleServer server = FindActiveServer();

            if (server != null && server.AddRoom(room))
            {
                return(server);
            }
            return(null);
        }
Esempio n. 6
0
        public static BattleServer AddRoom(BaseRoom room)
        {
            BattleServer battleServer = BattleMgr.FindActiveServer();

            if (battleServer != null && battleServer.AddRoom(room))
            {
                return(battleServer);
            }
            return(null);
        }
Esempio n. 7
0
        public static void Disconnet(int id)
        {
            BattleServer server = BattleMgr.GetServer(id);

            if (server != null && server.IsActive)
            {
                server.LastRetryTime = DateTime.Now;
                server.RetryCount    = BattleMgr.MAX_RECONNECT_TIME;
                server.Stop();
            }
        }
Esempio n. 8
0
        public static BattleServer AddRoom(BaseRoom room)
        {
            BattleServer server = BattleMgr.FindActiveServer(room);
            BattleServer result;

            if (server != null && server.AddRoom(room))
            {
                result = server;
            }
            else
            {
                result = null;
            }
            return(result);
        }
Esempio n. 9
0
        public static BattleServer FindFightServerByType(int type, bool isArea)
        {
            List <BattleServer> list;

            Monitor.Enter(list = BattleMgr.m_list);
            BattleServer result;

            try
            {
                BattleServer m_server = null;
                foreach (BattleServer server in BattleMgr.m_list)
                {
                    if (server.IsActive && server.ServerType == type && server.IsOpen && server.IsArea == isArea)
                    {
                        if (m_server == null)
                        {
                            m_server = server;
                        }
                        else
                        {
                            if (server.RoomCount < m_server.RoomCount)
                            {
                                m_server = server;
                            }
                        }
                    }
                }
                if (m_server != null)
                {
                    m_server.RoomCount++;
                    m_server.WaitingRoomCount++;
                }
                result = m_server;
            }
            finally
            {
                Monitor.Exit(list);
            }
            return(result);
        }
Esempio n. 10
0
        private static void battle_Disconnected(object sender, EventArgs e)
        {
            BattleServer server = sender as BattleServer;

            BattleMgr.log.ErrorFormat("Disconnect from battle server {0}:{1}", server.Ip, server.Port);
            if (server != null && BattleMgr.AutoReconnect && BattleMgr.m_list.Contains(server))
            {
                BattleMgr.RemoveServer(server);
                if ((DateTime.Now - server.LastRetryTime).TotalMinutes > (double)BattleMgr.MAX_RECOUNT_MINS)
                {
                    server.RetryCount = 0;
                }
                if (server.RetryCount < BattleMgr.MAX_RECONNECT_TIME)
                {
                    BattleServer newserver = server.Clone();
                    BattleMgr.AddBattleServer(newserver);
                    newserver.RetryCount    = server.RetryCount + 1;
                    newserver.LastRetryTime = DateTime.Now;
                    newserver.Start();
                }
            }
        }
Esempio n. 11
0
 public static void CancelPickup(BattleServer server, BaseRoom room)
 {
     AddAction(new CancelPickupAction(server, room));
 }
Esempio n. 12
0
 public FightServerConnector(BattleServer server, string ip, int port, string key) : base(ip, port, false, new byte[20480], new byte[20480])
 {
     this.m_server = server;
     this.m_key    = key;
     base.Strict   = false;
 }
Esempio n. 13
0
 public FightServerConnector(BattleServer server, string ip, int port, string key) : base(ip, port, true, new byte[30720], new byte[30720])
 {
     this.m_server = server;
     this.m_key    = key;
     base.Strict   = true;
 }
Esempio n. 14
0
 public CancelPickupAction(BattleServer server,BaseRoom room)
 {
     m_room = room;
     m_server = server;
 }