| | |
| | | }
|
| | |
|
| | | #region 配置
|
| | | private Dictionary<int, Dictionary<int, int>> m_DogzEquipLimit = new Dictionary<int, Dictionary<int, int>>();
|
| | | public int DogzAssistDefaultCnt { get; private set; }
|
| | | public int AddAssistItem { get; private set; }
|
| | | public int AddAssistItemCnt { get; private set; }
|
| | | private Dictionary<int, Dictionary<int, int>> m_DogzEquipLimit = new Dictionary<int, Dictionary<int, int>>(); //装备位 品质限制
|
| | | public int DogzAssistDefaultCnt { get; private set; } //助战神兽总数
|
| | | public int DogzAssistMaxCnt { get; private set; }//助战神兽最大数
|
| | | public int AddAssistItem { get; private set; } //增加助战神兽总数的物品Id
|
| | | public int[] AddAssistItemCnt { get; private set; } //增加助战神兽总数的物品数量
|
| | | public Dictionary<int, int> m_DogzEquipStrenLimit { get; private set;} //神兽装备强化上限 品质 强化等级
|
| | | void ParseConfig()
|
| | | {
|
| | | var _dogzCfgs = ConfigManager.Instance.GetAllValues<DogzConfig>();
|
| | | for (int i = 0; i < _dogzCfgs.Count; i++)
|
| | | {
|
| | | var _dict = new Dictionary<int, int>();
|
| | | var _json = LitJson.JsonMapper.ToObject(_dogzCfgs[i].EquipLimit);
|
| | | foreach (var _key in _json.Keys)
|
| | | for(int j = 0; j < _dogzCfgs[i].EquipPlaceColorList.Length; j++)
|
| | | {
|
| | | var _index = int.Parse(_key);
|
| | | _dict.Add(_index, int.Parse(_json[_key].ToString()));
|
| | | _dict.Add(j+1, _dogzCfgs[i].EquipPlaceColorList[j]);
|
| | | }
|
| | | m_DogzEquipLimit.Add(_dogzCfgs[i].id, _dict);
|
| | | m_DogzEquipLimit.Add(_dogzCfgs[i].ID, _dict);
|
| | | }
|
| | | var _funcCfg = ConfigManager.Instance.GetTemplate<FuncConfigConfig>("DogzAssist");
|
| | | DogzAssistDefaultCnt = int.Parse(_funcCfg.Numerical1);
|
| | | var _itemJson = LitJson.JsonMapper.ToObject(_funcCfg.Numerical2);
|
| | | var _itemJsonKey = _itemJson.Keys.First();
|
| | | AddAssistItem = int.Parse(_itemJsonKey);
|
| | | AddAssistItemCnt = int.Parse(_itemJson[_itemJsonKey].ToString());
|
| | |
|
| | | int[] assistDogz = ConfigParse.GetMultipleStr<int>(_funcCfg.Numerical1);
|
| | | DogzAssistDefaultCnt = assistDogz[0];
|
| | | DogzAssistMaxCnt = assistDogz[1];
|
| | | AddAssistItem = int.Parse(_funcCfg.Numerical2);
|
| | | AddAssistItemCnt = ConfigParse.GetMultipleStr<int>(_funcCfg.Numerical3);
|
| | | m_DogzEquipStrenLimit = ConfigParse.GetDic<int, int>(_funcCfg.Numerical4);
|
| | | dogzAssists = new List<int>();
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 获得格子可以穿戴的装备限制 神兽Id 格子索引 |
| | | /// </summary>
|
| | | /// <param name="_dogzId"></param>
|
| | | /// <param name="_index"></param>
|
| | | /// <returns></returns>
|
| | | public int GetDogzEquipLimitByIndex(int _dogzId, int _index)
|
| | | {
|
| | | if (m_DogzEquipLimit.ContainsKey(_dogzId))
|
| | |
| | | return 0;
|
| | | }
|
| | |
|
| | | public int GetDogzGrade(int _id)
|
| | | {
|
| | |
|
| | | return 0;
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 得到神兽格子对应的装备部位
|
| | | /// </summary>
|
| | | /// <param name="_index"></param>
|
| | | /// <returns></returns>
|
| | | public static string GetDogzPartNameByIndex(int _index)
|
| | | {
|
| | | switch (_index)
|
| | | {
|
| | | //case 0:
|
| | | // return "兽角";
|
| | | //case 1:
|
| | | // return "魔眼";
|
| | | //case 2:
|
| | | // return "獠牙";
|
| | | //case 3:
|
| | | // return "兽爪";
|
| | | //case 4:
|
| | | // return "鳞甲";
|
| | | case 0:
|
| | | return "兽角";
|
| | | case 1:
|
| | | return "魔眼";
|
| | | case 2:
|
| | | return "獠牙";
|
| | | case 3:
|
| | | return "兽爪";
|
| | | case 4:
|
| | | return "鳞甲";
|
| | | default:
|
| | | return string.Empty;
|
| | | }
|
| | | }
|
| | |
|
| | | public static string GetItemColorName(int _itemColor)
|
| | | {
|
| | | switch (_itemColor)
|
| | | {
|
| | | //case 0:
|
| | | //case 1:
|
| | | // return "白色";
|
| | | //case 2:
|
| | | // return "蓝色";
|
| | | //case 3:
|
| | | // return "紫色";
|
| | | //case 4:
|
| | | // return "橙色";
|
| | | //case 5:
|
| | | // return "红色";
|
| | | case 0:
|
| | | case 1:
|
| | | return "白色";
|
| | | case 2:
|
| | | return "蓝色";
|
| | | case 3:
|
| | | return "紫色";
|
| | | case 4:
|
| | | return "橙色";
|
| | | case 5:
|
| | | return "红色";
|
| | | default:
|
| | | return string.Empty;
|
| | | }
|
| | | }
|
| | | #endregion
|
| | |
|
| | | public int presentSelectDogz { get; set; }
|
| | | public int GetAssistItemCnt()
|
| | | {
|
| | | return AddAssistItemCnt[0];
|
| | | }
|
| | |
|
| | | public int presentSelectDogz { get; set; } //当前选中的神兽id
|
| | | public event Action UpdateSelectDogzEvent;
|
| | | public void SetSelectDogz(int _id)
|
| | | {
|
| | |
| | | }
|
| | |
|
| | | #region 协议
|
| | | public List<int> dogzAssists { get; private set; }
|
| | | public List<int> dogzAssists { get; private set; } //当前助战神兽列表
|
| | | public event Action UpdateAssistDogzEvent;
|
| | | public void UpdateAssistDogz()
|
| | | {
|
| | |
| | | UpdateAssistDogzEvent();
|
| | | }
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 获得神兽穿戴的装备数据
|
| | | /// </summary>
|
| | | private Dictionary<int, List<DogzEquipData>> m_DogzEquipDict = new Dictionary<int, List<DogzEquipData>>();
|
| | | public List<DogzEquipData> GetDogzEquips(int _dogzId)
|
| | | {
|
| | |
| | | m_DogzEquipDict.TryGetValue(_dogzId,out _list);
|
| | | return _list;
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 获得当前格子穿戴的装备
|
| | | /// </summary>
|
| | | /// <param name="_dogzId"></param>
|
| | | /// <param name="_index"></param>
|
| | | /// <param name="_equipData"></param>
|
| | | /// <returns></returns>
|
| | | public bool TryGetDogzEquip(int _dogzId, int _index, out DogzEquipData _equipData)
|
| | | {
|
| | | _equipData = default(DogzEquipData);
|