Exemplo n.º 1
0
 public void Init()
 {
     Table.ForeachServerName(record =>
     {
         if (record.Id == record.LogicID && ServerLodeManagerManager.Servers.ContainsKey(record.LogicID) == false && (record.IsClientDisplay == 1 || record.IsClientDisplay == 2))
         {
             LodeManager temp = new LodeManager();
             temp.Init(record.LogicID);
             ServerLodeManagerManager.Servers.Add(record.LogicID, temp);
         }
         return(true);
     });
     TeamServerControl.tm.CreateTrigger(DateTime.Now.AddSeconds(30), Update, 30000); //30秒一次
     EventDispatcher.Instance.AddEventListener(ReloadTableEvent.EVENT_TYPE, ReloadTable);
 }
Exemplo n.º 2
0
        private static void ReloadTable(IEvent ievent)
        {
            var v = ievent as ReloadTableEvent;

            if (v == null)
            {
                return;
            }
            if (v.tableName == "ServerName")
            {
                Table.ForeachServerName(record =>
                {
                    if (record.LogicID == record.Id && ServerLodeManagerManager.Servers.ContainsKey(record.LogicID) == false && (record.IsClientDisplay == 1 || record.IsClientDisplay == 2))
                    {
                        LodeManager temp = new LodeManager();
                        temp.Init(record.LogicID);
                        ServerLodeManagerManager.Servers.Add(record.LogicID, temp);
                    }
                    return(true);
                });
            }
        }