// *********************************************************************** // Assembly : Unity // Author : Kimch // Created : 2019-05-20 // Description : // Last Modified By : // Last Modified On : // *********************************************************************** // // // *********************************************************************** namespace G { using F.Item; using System.Collections.Generic; partial class ItemProxy { private ItemGroupHelper _itemGroupHelper = new ItemGroupHelper(); private Dictionary _typeNameDict = new Dictionary(); /// /// /// private void InitStatic() { KFramework.ItemManager.SetItemGroupHelper(_itemGroupHelper); ///添加供全局表 this.AddStaticGroup(false); this.AddStaticGroup(false); //图标 this.AddStaticGroup(false); ///添加供全局查找道具 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //属性表 this.AddStaticGroup(false); this.AddStaticGroup(false); //武学文学 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); ///添加 怪物表 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //关卡相关 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //奇遇冒险 this.AddStaticGroup(false); // this.AddStaticGroup(false); this.AddStaticGroup(false); // this.AddStaticGroup(false); this.AddStaticGroup(false); //宝箱 this.AddStaticGroup(false); //事务 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //称号 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //功能表 this.AddStaticGroup(false); //角色表 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //Npc this.AddStaticGroup(false); //宠物 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //任务表 this.AddStaticGroup(false); //剧情相关 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //新手引导 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //活动表 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); // this.AddStaticGroup(false); this.AddStaticGroup(false); // city this.AddStaticGroup(false); this.AddStaticGroup(false); //帮会 //this.AddStaticGroup(false); //this.AddStaticGroup(false); //this.AddStaticGroup(false); //this.AddStaticGroup(false); // this.AddStaticGroup(false); this.AddStaticGroup(false); //商城表 this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); this.AddStaticGroup(false); //转化表 this.AddStaticGroup(false); } #region Method private string GetTypeName() { var t = typeof(T); if (_typeNameDict.TryGetValue(t, out var result)) { return result; } result = t.Name; _typeNameDict.Add(t, result); return result; } /// /// /// /// /// private void AddStaticGroup(bool global) where T : class, IItem { var fullName = GetTypeName(); _itemGroupHelper.AddClass(fullName); KFramework.ItemManager.AddStaticGroup(fullName, global); } /// /// /// /// /// public IItemGroup GetGroup() where T : class, IItem { var fullName = GetTypeName(); return KFramework.ItemManager.GetGroup(fullName); } /// /// /// /// /// public IReadOnlyList GetStaticItems() where T : class, IItem { var fullName = GetTypeName(); return KFramework.ItemManager.GetStaticItems(fullName); } /// /// /// /// /// /// public T GetStaticItem(int id) where T : class, IItem { if (id > 0) { var fullName = GetTypeName(); var group = KFramework.ItemManager.GetGroup(fullName); if (group != null) return group.GetItem(id); } return default; } /// /// 获取全局Item /// /// /// public IItem GetGlobalItem(int id) { if (id > 0) { return KFramework.ItemManager.GetStaticItem(id); } return default; } #endregion } }