using System.Collections.Generic; namespace vnxbqy.UI { public class PhantasmPavilionAvatarHandler : IPhantasmPavilionTabHandler { PhantasmPavilionModel model { get { return ModelCenter.Instance.GetModel(); } } public string GetDescriptive(int id) { return PlayerFaceConfig.Get(id).Descriptive; } public int GetExpireMinutes(int id) { return PlayerFaceConfig.Get(id).ExpireMinutes; } public string GetImage(int id) { return PlayerFaceConfig.Get(id).Image; } public string GetName(int id) { return PlayerFaceConfig.Get(id).Name; } public int GetSortNum(int id) { return PlayerFaceConfig.Get(id).BgColor; } public List GetTableKeys() { return model.StringListToIntList(PlayerFaceConfig.GetKeys()); } public int GetUnlockDefault(int id) { return PlayerFaceConfig.Get(id).UnlockDefault; } public bool Has(int id) { return PlayerFaceConfig.Has(id); } public void SendStarUPPack(int id) { model.SendCB227FaceStarUP(id); } public void SendUsePack(int id) { model.SendCB226FaceChange(id); } public bool TryGetAddStarAttr(int id, int star, out int[] addStarAttrTypeArr, out int[] addStarAttrValueArr) { addStarAttrTypeArr = new int[0]; addStarAttrValueArr = new int[0]; if (!PlayerFaceStarConfig.TryGetIndex(id, star, out int index) || !PlayerFaceStarConfig.Has(index)) return false; PlayerFaceStarConfig config = PlayerFaceStarConfig.Get(index); if (config.StarAttrType.IsNullOrEmpty() || config.StarAttrValue.IsNullOrEmpty() || config.StarAttrType.Length != config.StarAttrValue.Length) return false; addStarAttrTypeArr = config.StarAttrType; addStarAttrValueArr = config.StarAttrValue; return true; } public bool TryGetEffectID(int id, out int effectID) { effectID = 0; if (!PlayerFaceConfig.Has(id)) return false; PlayerFaceConfig config = PlayerFaceConfig.Get(id); if (!EffectConfig.Has(config.EffectID)) return false; effectID = config.EffectID; return true; } public bool TryGetMaxStarLV(int id, out int maxStarLV) { return PlayerFaceStarConfig.TryGetMaxStarLV(id, out maxStarLV); } public bool TryGetStarUpNeedItem(int id, int star, out int itemId, out int count) { itemId = 0; count = 0; if (!PlayerFaceStarConfig.TryGetIndex(id, star, out int index) || !PlayerFaceStarConfig.Has(index)) return false; PlayerFaceStarConfig config = PlayerFaceStarConfig.Get(index); if (config.StarUpNeedItemList.IsNullOrEmpty()) return false; itemId = config.StarUpNeedItemList[0][0]; count = config.StarUpNeedItemList[0][1]; return true; } public bool TryGetUnLockAttr(int id, out int[] lightAttrTypeArr, out int[] lightAttrValueArr) { lightAttrTypeArr = new int[0]; lightAttrValueArr = new int[0]; if (!PlayerFaceConfig.Has(id)) return false; PlayerFaceConfig config = PlayerFaceConfig.Get(id); if (config.LightAttrType.IsNullOrEmpty() || config.LightAttrValue.IsNullOrEmpty() || config.LightAttrType.Length != config.LightAttrValue.Length) return false; lightAttrTypeArr = config.LightAttrType; lightAttrValueArr = config.LightAttrValue; return true; } public bool TryGetUnLockNeedItem(int id, out int itemId, out int count) { itemId = 0; count = 0; if (!PlayerFaceConfig.Has(id)) return false; PlayerFaceConfig config = PlayerFaceConfig.Get(id); if (config.UnlockNeedItemList.IsNullOrEmpty()) return false; itemId = config.UnlockNeedItemList[0][0]; count = config.UnlockNeedItemList[0][1]; return true; } } }