using GameFramework; using SepCore.Definition; using UnityEngine; using UnityGameFramework.Runtime; namespace SepCore.BuiltinData { public class BuiltinDataComponent : GameFrameworkComponent { [SerializeField] private TextAsset _buildInfoTextAsset = null; [SerializeField] private TextAsset _defaultDictionaryTextAsset = null; [SerializeField] private GameObject _updateResourceFormTemplate = null; private BuildInfo _buildInfo = null; public BuildInfo BuildInfo => _buildInfo; public GameObject UpdateResourceFormTemplate => _updateResourceFormTemplate; public void InitBuildInfo() { if (_buildInfoTextAsset == null || string.IsNullOrEmpty(_buildInfoTextAsset.text)) { Log.Info("Build info can not be found or empty."); return; } _buildInfo = Utility.Json.ToObject(_buildInfoTextAsset.text); if (_buildInfo == null) { Log.Warning("Parse build info failure."); return; } } public void InitDefaultDictionary() { if (_defaultDictionaryTextAsset == null || string.IsNullOrEmpty(_defaultDictionaryTextAsset.text)) { Log.Info("Default dictionary can not be found or empty."); return; } if (!GameEntry.Localization.ParseData(_defaultDictionaryTextAsset.text)) { Log.Warning("Parse default dictionary failure."); return; } } } }