Beispiel #1
0
        public string CenterServerRunParamConvert(string path, TCenterServerCfgData cfgData)
        {
            StringBuilder paramArgs = new StringBuilder();

            paramArgs.Append(path).Append(" ");
            paramArgs.Append(cfgData.serverGroupName).Append(" ");
            paramArgs.Append(cfgData.gameID.ToString()).Append(" ");
            paramArgs.Append(cfgData.serverID.ToString()).Append(" ");
            paramArgs.Append(cfgData.lanIPAddr).Append(" ");
            paramArgs.Append(cfgData.inPort.ToString()).Append(" ");
            paramArgs.Append(string.Format("{0},{1}", cfgData.crossRealmServer.Key, cfgData.crossRealmServer.Value)).Append(" ");
            StringBuilder strBuild = new StringBuilder();

            foreach (var ele in cfgData.protalServerList.GetElements())
            {
                strBuild.Append(string.Format("{0},{1};", ele.Key, ele.Value));
            }
            if (strBuild.Length == 0)
            {
                strBuild.Append(",");
            }
            paramArgs.Append(strBuild.ToString()).Append(" ");
            paramArgs.Append(string.Format("{0},{1}", cfgData.gmServer.Key, cfgData.gmServer.Value)).Append(" ");
            paramArgs.Append(string.Format("{0},{1}", cfgData.platformDockingServer.Key, cfgData.platformDockingServer.Value)).Append(" ");
            paramArgs.Append(string.Format("{0},{1}", "127.0.0.1", SvrCommCfg.Instance.ServerInfo.m_Port));
            return(paramArgs.ToString());
        }
Beispiel #2
0
        public TCenterServerCfgData CenterServerRunParamConvert(string[] runParams, out string moniteorSvrAddr, out int moniteorSvrPort)
        {
            moniteorSvrAddr = "";
            moniteorSvrPort = 0;

            TCenterServerCfgData cfgData = new TCenterServerCfgData();

            cfgData.serverGroupName = runParams[1];
            cfgData.gameID          = Convert.ToInt32(runParams[2]);
            cfgData.serverID        = Convert.ToInt32(runParams[3]);
            cfgData.lanIPAddr       = runParams[4];
            cfgData.inPort          = Convert.ToInt32(runParams[5]);

            TIDStrKeyValue idIPPort = new TIDStrKeyValue();

            idIPPort.Key   = HTBaseFunc.DepartStr(runParams[6], ",", 0);
            idIPPort.Value = HTBaseFunc.DepartStr(runParams[6], ",", 1);

            if (idIPPort.Value == "")
            {
                idIPPort.Value = "0";
            }
            cfgData.crossRealmServer = idIPPort;

            cfgData.protalServerList = new TIDStrKeyValueList();
            int    index  = 0;
            string curStr = HTBaseFunc.DepartStr(runParams[7], ";", index);

            while (curStr != "")
            {
                idIPPort       = new TIDStrKeyValue();
                idIPPort.Key   = HTBaseFunc.DepartStr(curStr, ",", 0);
                idIPPort.Value = HTBaseFunc.DepartStr(curStr, ",", 1);
                if (idIPPort.Value == "")
                {
                    idIPPort.Value = "0";
                }
                cfgData.protalServerList.Add(idIPPort);

                ++index;
                curStr = HTBaseFunc.DepartStr(runParams[7], ";", index);
            }

            idIPPort       = new TIDStrKeyValue();
            idIPPort.Key   = HTBaseFunc.DepartStr(runParams[8], ",", 0);
            idIPPort.Value = HTBaseFunc.DepartStr(runParams[8], ",", 1);
            if (idIPPort.Value == "")
            {
                idIPPort.Value = "0";
            }
            cfgData.gmServer = idIPPort;

            idIPPort       = new TIDStrKeyValue();
            idIPPort.Key   = HTBaseFunc.DepartStr(runParams[9], ",", 0);
            idIPPort.Value = HTBaseFunc.DepartStr(runParams[9], ",", 1);
            if (idIPPort.Value == "")
            {
                idIPPort.Value = "0";
            }
            cfgData.platformDockingServer = idIPPort;

            moniteorSvrAddr = HTBaseFunc.DepartStr(runParams[10], ",", 0);
            moniteorSvrPort = Convert.ToInt32(HTBaseFunc.DepartStr(runParams[10], ",", 1));

            return(cfgData);
        }