using BestHTTP; using EasyInject.Attributes; using Newtonsoft.Json; using System.Collections.Generic; using UnityEngine; /// /// 后台系统 属性设置器 /// [Component] public class BackendSystemSetting : ISetting { private NetWorkComponent netWork; private Dictionary _settingMap = new Dictionary(); public string Code => "SYSTEM"; public bool inited = false; public T Read(string setItem) { object data = default; if (_settingMap.TryGetValue(setItem,out data)) { return (T)data; } return (T)data; } public bool Save(string setItem, T value) { if(!_settingMap.ContainsKey(setItem)) { _settingMap.Add(setItem, value); netWork.RemoteSaveData(Code, JsonConvert.SerializeObject(_settingMap)); return true; } object data = default; if(_settingMap.TryGetValue(setItem,out data)) { data = value; netWork.RemoteSaveData(Code, JsonConvert.SerializeObject(_settingMap)); return true; } else { return false; } } public void Remove(string setItem) { _settingMap.Remove(setItem); netWork.RemoteSaveData(Code, JsonConvert.SerializeObject(_settingMap)); } }