using System; using System.Collections.Generic; using System.IO; namespace ET.Server { [Invoke] public class GetAllConfigBytes: AInvokeHandler<ConfigComponent.GetAllConfigBytes, Dictionary<Type, byte[]>> { public override Dictionary<Type, byte[]> Handle(ConfigComponent.GetAllConfigBytes args) { Dictionary<Type, byte[]> output = new Dictionary<Type, byte[]>(); List<string> startConfigs = new List<string>() { "StartMachineConfigCategory", "StartProcessConfigCategory", "StartSceneConfigCategory", "StartZoneConfigCategory", }; HashSet<Type> configTypes = EventSystem.Instance.GetTypes(typeof (ConfigAttribute)); foreach (Type configType in configTypes) { string configFilePath = startConfigs.Contains(configType.Name)? $"../Config/GenFromExcel/s/{Options.Instance.StartConfig}/{configType.Name}.bytes" : $"../Config/GenFromExcel/s/{configType.Name}.bytes"; output[configType] = File.ReadAllBytes(configFilePath); } return output; } } [Invoke] public class GetOneConfigBytes: AInvokeHandler<ConfigComponent.GetOneConfigBytes, byte[]> { public override byte[] Handle(ConfigComponent.GetOneConfigBytes args) { return File.ReadAllBytes($"../Config/GenFromExcel/{args.ConfigName}.bytes"); } } }