// 阵型按钮点击 public void OnMatrixButtonClick(int matrixIndex) { if (BelleController.Instance() == null || BelleMatrixWindow.Instance() == null) { LogModule.ErrorLog("BelleController.Instance() == null || BelleMatrixWindow.Instance() == null"); return; } if (null == BelleMatrixWindow.Instance().CurSelectMatrix) { return; } if (matrixIndex < 0) { return; } int curMatrixID = Int32.Parse(BelleMatrixWindow.Instance().CurSelectMatrix.gameObject.name); if (!BelleData.OwnedMatrixMap.ContainsKey(curMatrixID)) { LogModule.ErrorLog("can not find matrixid in data" + curMatrixID); return; } Tab_BelleMatrix curTabMatrix = TableManager.GetBelleMatrixByID(curMatrixID, 0); if (null == curTabMatrix) { LogModule.ErrorLog("can not find cur matrix id :" + curMatrixID.ToString()); return; } Obj_MainPlayer mainPlayer = Singleton <ObjManager> .Instance.MainPlayer; if (!BelleData.OwnedMatrixMap.ContainsKey(curMatrixID) || null == mainPlayer || mainPlayer.BaseAttr.Level < curTabMatrix.OpenLevel) { return; } this.m_curMatrixIndex = matrixIndex; if (matrixIndex >= 0 && matrixIndex < m_MatrixBelleInfos.Length) { m_selectBelleData.CleanUp(); m_selectBelleData.belleID = m_MatrixBelleInfos[matrixIndex].belleID; m_selectBelleData.matrixId = curMatrixID; m_selectBelleData.isInCurMatrix = true; if (BelleData.OwnedBelleMap.ContainsKey(m_MatrixBelleInfos[matrixIndex].belleID)) { Belle belle = BelleData.OwnedBelleMap[m_MatrixBelleInfos[matrixIndex].belleID]; if (null != belle) { m_selectBelleData.combatValue = BelleData.GetPowerNum(belle.attrMap); } } } m_myBelleWindow.SetActive(true); }
//获取当前可以显示的美人列表,当前阵上的那个美人单独处理 public List <SelectBelleData> GetSelectBelleListByBelleId() { List <SelectBelleData> selectBelleDataList = new List <SelectBelleData>(); foreach (int belleId in TableManager.GetBelle().Keys) { if (BelleData.OwnedBelleMap.ContainsKey(belleId)) { SelectBelleData selectBelleData = new SelectBelleData(); selectBelleData.CleanUp(); selectBelleData.belleID = belleId; selectBelleData.matrixId = BelleData.OwnedBelleMap[belleId].matrixID; BelleData.OwnedBelleMap[belleId].UpdateAttrMap(); selectBelleData.combatValue = BelleData.GetPowerNum(BelleData.OwnedBelleMap[belleId].attrMap); bool isAdd = true; for (int i = 0; i < hasInMatirxBelles.Count; i++) { //已经在当前阵上上阵的就不添加了。 if (hasInMatirxBelles[i] == belleId) { isAdd = false; } //羁绊关系添加 Tab_Belle _belleTab = TableManager.GetBelleByID(hasInMatirxBelles[i], 0); if (null != _belleTab) { for (int j = 0; j < _belleTab.getAffectionConditonTypeCount(); j++) { if (BELLE_AFFECTION_TYPE == _belleTab.GetAffectionConditonTypebyIndex(j)) { int belleIdRelation = _belleTab.GetAffectionConditonValuebyIndex(j); if (belleIdRelation == belleId) { selectBelleData.isRelationship = true; } } } } } if (isAdd) { selectBelleDataList.Add(selectBelleData); } } } selectBelleDataList.Sort(); return(selectBelleDataList); }
public List <SelectBelleData> GetSelectBellelistByBelleIds(List <int> belleIds) { List <SelectBelleData> selectBelleDataList = new List <SelectBelleData>(); if (belleIds == null && belleIds.Count == 0) { return(selectBelleDataList); } foreach (int belleId in TableManager.GetBelle().Keys) { if (BelleData.OwnedBelleMap.ContainsKey(belleId)) { SelectBelleData selectBelleData = new SelectBelleData(); selectBelleData.CleanUp(); selectBelleData.belleID = belleId; selectBelleData.matrixId = BelleData.OwnedBelleMap[belleId].matrixID; selectBelleData.combatValue = BelleData.GetPowerNum(BelleData.OwnedBelleMap[belleId].attrMap); for (int i = 0; i < belleIds.Count; i++) { Tab_Belle _belleTab = TableManager.GetBelleByID(belleIds[i], 0); if (null != _belleTab) { for (int j = 0; j < _belleTab.getAffectionConditonTypeCount(); j++) { if (BELLE_AFFECTION_TYPE == _belleTab.GetAffectionConditonTypebyIndex(j)) { int belleIdRelation = _belleTab.GetAffectionConditonValuebyIndex(j); if (belleIdRelation == belleId) { selectBelleData.isRelationship = true; } } } } } selectBelleDataList.Add(selectBelleData); } } selectBelleDataList.Sort(); return(selectBelleDataList); }