예제 #1
0
        public SCFG_SJScene Find(uint SceneLevel)
        {
            SCFG_SJScene ret = null;

            _mapContent.TryGetValue(SceneLevel, out ret);
            return(ret);
        }
예제 #2
0
        public ECSVReadResult Load(string path)
        {
            var csvText = File.ReadAllText(path, Encoding.UTF8);

            if (string.IsNullOrEmpty(csvText))
            {
                return(ECSVReadResult.FileOpenError);
            }
            string[][] grid = CsvParser.Parse(csvText);
            if (grid == null)
            {
                return(ECSVReadResult.FormatError);
            }
            int rowLen = grid.Length;

            if (rowLen < 1)
            {
                return(ECSVReadResult.FormatError);
            }
            int colLen = grid[0].Length;

            if (colLen < 1)
            {
                return(ECSVReadResult.FormatError);
            }
            var parser = new StringParser(grid);
            int keyIdx = 0;

            for (int i = 3; i < rowLen; i++)
            {
                var info   = new SCFG_SJScene();
                var key    = parser.ReadUInt32(i, keyIdx);
                int colIdx = 0;
                info.SceneLevel       = parser.ReadUInt32(i, colIdx++);
                info.SceneName        = parser.ReadString(i, colIdx++);
                info.AutoStart        = parser.ReadUInt32(i, colIdx++);
                info.TicketFee        = parser.ReadUInt32(i, colIdx++);
                info.MinCoin          = parser.ReadUInt32(i, colIdx++);
                info.MaxCoin          = parser.ReadUInt32(i, colIdx++);
                info.BaseCoin         = parser.ReadUInt32(i, colIdx++);
                info.EscapeShapreRate = parser.ReadUInt32(i, colIdx++);
                info.MaxLose          = parser.ReadUInt32(i, colIdx++);
                info.EnableDouble     = parser.ReadUInt32(i, colIdx++);
                info.DoubleLimit      = parser.ReadUInt32(i, colIdx++);
                info.BaseMulity       = parser.ReadUInt32(i, colIdx++);
                info.BaseExp          = parser.ReadUInt32(i, colIdx++);
                info.GameType         = parser.ReadUInt32(i, colIdx++);
                info.MatchGame        = parser.ReadUInt32(i, colIdx++);
                info.FirstGiveTime    = parser.ReadUInt32(i, colIdx++);
                info.GiveTime         = parser.ReadUInt32(i, colIdx++);
                info.LogFlag          = parser.ReadUInt32(i, colIdx++);
                info.ErrLogFlag       = parser.ReadUInt32(i, colIdx++);
                info.LogPath          = parser.ReadString(i, colIdx++);
                info.RobotCfg         = parser.ReadString(i, colIdx++);

                _mapContent.Add(key, info);
            }
            return(ECSVReadResult.Succ);
        }