// 此文件由 ThriftIntegratedPipeline 自动生成,请勿手动修改 // 配置类: PetShopItem // 数据类: PetShopItemItem using UnityEngine; using Byway.Config; using Byway.Thrift.Data; using UnityGameFramework.Runtime; namespace CrazyMaple { /// /// PetShopItem 数据行 /// public class DRPetShopItem : DataRowBase { private PetShopItemItem _configData; /// /// 唯一标识 /// public override int Id { get { return _configData?.Id ?? 0; } } /// /// GroupId /// public int GroupId { get { return _configData?.GroupId ?? 0; } } /// /// Page /// public int Page { get { return _configData?.Page ?? 0; } } /// /// ItemId /// public int ItemId { get { return _configData?.ItemId ?? 0; } } /// /// Icon /// public string Icon { get { return _configData?.Icon ?? ""; } } /// /// ReqId /// public int ReqId { get { return _configData?.ReqId ?? 0; } } /// /// Level /// public int Level { get { return _configData?.Level ?? 0; } } /// /// SellType /// public string SellType { get { return _configData?.SellType ?? ""; } } /// /// SellPrice /// public int SellPrice { get { return _configData?.SellPrice ?? 0; } } /// /// Mood /// public int Mood { get { return _configData?.Mood ?? 0; } } /// /// BagItem /// public string BagItem { get { return _configData?.BagItem ?? ""; } } /// /// Animation /// public string Animation { get { return _configData?.Animation ?? ""; } } /// /// MouthPos /// public string MouthPos { get { return _configData?.MouthPos ?? ""; } } /// /// BubbleRes /// public string BubbleRes { get { return _configData?.BubbleRes ?? ""; } } /// /// Exp /// public int Exp { get { return _configData?.Exp ?? 0; } } /// /// Cooldown /// public int Cooldown { get { return _configData?.Cooldown ?? 0; } } /// /// Dailystorage /// public int Dailystorage { get { return _configData?.Dailystorage ?? 0; } } /// /// Name /// public string Name { get { return _configData?.Name ?? ""; } } /// /// 从配置加载数据(优先使用传入的配置实例) /// public void LoadFromConfig(int id, PetShopItem config = null) { if (config == null) { config = ConfigManager.Instance.GetConfig(); } if (config?.Petshopitems != null) { config.Petshopitems.TryGetValue(id, out _configData); } } /// /// 直接设置配置数据(性能优化:跳过字典查询) /// public void SetConfigData(PetShopItemItem configData) { _configData = configData; } /// /// 解析数据行(优化:使用 userData 传入的配置实例,避免重复调用 GetConfig) /// public override bool ParseDataRow(string dataRowString, object userData) { int id = 0; if (!int.TryParse(dataRowString, out id)) { return false; } // 性能优化:尝试从 userData 获取配置字典,直接获取 Item if (userData is System.Collections.Generic.Dictionary userDataDict) { // 优先尝试从缓存的字典直接获取 Item(最快) if (userDataDict.TryGetValue("ConfigDict", out object dictObj)) { var dict = dictObj as System.Collections.Generic.Dictionary; if (dict != null && dict.TryGetValue(id, out var item)) { _configData = item; return true; } } // 备选方案:从配置实例获取 if (userDataDict.TryGetValue("ConfigInstance", out object configObj)) { var config = configObj as PetShopItem; if (config != null) { LoadFromConfig(id, config); return _configData != null; } } } // 兜底方案:直接查询(最慢) LoadFromConfig(id); return _configData != null; } } }