1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using GFGGame;
- namespace GFGEditor
- {
- public class InstanceZonesScanner
- {
- //计算每个副本的关卡数
- private static Dictionary<int, int> levelCountDIc = new Dictionary<int, int>();
- public static void StartScan()
- {
- var dataArray = StoryLevelCfgArray.Instance.dataArray;
- SQLiteHelper.Instance.OpenConnection();
- try
- {
- foreach (var cfg in dataArray)
- {
- var key = CalculateHelper.GenerateInstanceZonesLevelStateKey(cfg.type, cfg.subType, cfg.chapterId);
- levelCountDIc.TryGetValue(key, out var count);
- count++;
- levelCountDIc[key] = count;
- var names = new string[] { nameof(cfg.order) };
- var values = new string[] { "" + count };
- SQLiteHelper.Instance.UpdateValues(nameof(StoryLevelCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
- }
- }
- catch (Exception e)
- {
- ET.Log.Error(e.ToString());
- }
- finally
- {
- SQLiteHelper.Instance.CloseConnection();
- }
- //写入
- WriteStoryChapter();
- WriteStudioChapter();
- }
- public static void WriteStoryChapter()
- {
- //写入
- var dataArray = StoryChapterCfgArray.Instance.dataArray;
- SQLiteHelper.Instance.OpenConnection();
- try
- {
- foreach (var cfg in dataArray)
- {
- var key = CalculateHelper.GenerateInstanceZonesLevelStateKey(cfg.type, cfg.subType, cfg.id);
- levelCountDIc.TryGetValue(key, out var count);
- var names = new string[] { nameof(cfg.levelCount) };
- var values = new string[] { "" + count };
- SQLiteHelper.Instance.UpdateValues(nameof(StoryChapterCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
- }
- }
- catch (Exception e)
- {
- ET.Log.Error(e.ToString());
- }
- finally
- {
- SQLiteHelper.Instance.CloseConnection();
- }
- }
- public static void WriteStudioChapter()
- {
- //写入
- var dataArray = StudioCfgArray.Instance.dataArray;
- SQLiteHelper.Instance.OpenConnection();
- try
- {
- foreach (var cfg in dataArray)
- {
- var key = CalculateHelper.GenerateInstanceZonesLevelStateKey(cfg.type, cfg.subType, cfg.id);
- levelCountDIc.TryGetValue(key, out var count);
- var names = new string[] { nameof(cfg.levelCount) };
- var values = new string[] { "" + count };
- SQLiteHelper.Instance.UpdateValues(nameof(StudioCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
- }
- }
- catch (Exception e)
- {
- throw (e);
- }
- finally
- {
- SQLiteHelper.Instance.CloseConnection();
- }
- }
- }
- }
|