| System/FashionDress/FashionDressCell.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FashionDress/FashionDressModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FashionDress/FashionDressWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
System/FashionDress/FashionDressCell.cs
@@ -49,9 +49,12 @@ m_Select.RemoveAllListeners(); var fashionDressLevel = model.GetFashionDressLevel(fashionDressId); m_ContainerDarkMask.gameObject.SetActive(fashionDressLevel == 0); m_ContainerStars.gameObject.SetActive(fashionDressLevel > 0); m_GetPath.gameObject.SetActive(fashionDressLevel == 0); var active = fashionDressLevel > 0; m_ContainerDarkMask.gameObject.SetActive(!active); m_ContainerStars.gameObject.SetActive(active); m_GetPath.gameObject.SetActive(!active); m_UnlockRedpoint.gameObject.SetActive(model.levelUpRedpoint.state == RedPointState.Simple && model.fashionDressRedpointId == fashionDressId); @@ -61,16 +64,18 @@ if (model.TryGetFashionDress(fashionDressId, out fashionDress)) { var equipItemId = fashionDress.GetEquipItemId(); var equipedFashionDressId = model.GetFashionDressEquipId(fashionDress.fashionDressType); var virtualEquipFashionId = model.GetVirtualEquipFashionDress(fashionDress.fashionDressType); var selectFashionDress = model.GetSelectFashionDress(fashionDress.fashionDressType); m_Equiped.gameObject.SetActive(equipedFashionDressId == fashionDressId); var previewFashionId = 0; model.TryGetSelect(fashionDress.fashionDressType, out previewFashionId); m_Preview.gameObject.SetActive(equipedFashionDressId != fashionDressId && previewFashionId == fashionDressId); m_ContainerSelect.gameObject.SetActive(previewFashionId == fashionDressId); bool isEquiped = virtualEquipFashionId == fashionDressId; m_Equiped.gameObject.SetActive(isEquiped); m_LevelUp.gameObject.SetActive(fashionDressLevel > 0 && fashionDressLevel < fashionDress.maxLevel); bool isSelect = selectFashionDress == fashionDressId; m_Preview.gameObject.SetActive(!isEquiped && isSelect); m_ContainerSelect.gameObject.SetActive(isSelect); m_LevelUp.gameObject.SetActive(active && fashionDressLevel < fashionDress.maxLevel); bool isMax = fashionDressLevel >= fashionDress.maxLevel; var count = packModel.GetItemCountByID(PackType.rptItem, fashionDress.requireLevelUpItem); @@ -109,15 +114,38 @@ FashionDress fashionDress; if (model.TryGetFashionDress(fashionDressId, out fashionDress)) { var dict = model.fashionDressSelectDict; if (dict.ContainsKey(fashionDress.fashionDressType) && dict[fashionDress.fashionDressType] == fashionDressId) var selectFashionDress = model.GetSelectFashionDress(fashionDress.fashionDressType); var virtualEquipFashionDress = model.GetVirtualEquipFashionDress(fashionDress.fashionDressType); if (selectFashionDress != fashionDressId) { model.SetPreviewFashionDress(fashionDress.fashionDressType, 0); if (model.IsFashionDressUnlock(fashionDressId)) { model.SetVirtualEquipFashionDress(fashionDress.fashionDressType, fashionDressId); model.SetSelectFashionDress(fashionDress.fashionDressType, fashionDressId); } else { model.SetSelectFashionDress(fashionDress.fashionDressType, fashionDressId); } } else { model.SetPreviewFashionDress(fashionDress.fashionDressType, fashionDressId); if (virtualEquipFashionDress == fashionDressId) { model.SetVirtualEquipFashionDress(fashionDress.fashionDressType, 0); model.SetSelectFashionDress(fashionDress.fashionDressType, 0); } else { if (virtualEquipFashionDress != 0) { model.SetSelectFashionDress(fashionDress.fashionDressType, virtualEquipFashionDress); } else { model.SetSelectFashionDress(fashionDress.fashionDressType, 0); } } } } } System/FashionDress/FashionDressModel.cs
@@ -33,6 +33,7 @@ } public Dictionary<int, int> fashionDressSelectDict { get; private set; } public Dictionary<int, int> fashionDressEquipDict { get; private set; } public List<int> fashionDressLevelUpItems { get; private set; } public List<int> fashionDressTypes { get; private set; } @@ -75,6 +76,7 @@ public event Action cabinetRefresh; public event Action<int> fashionDressRefresh; public event Action<int> previewRefresh; public event Action<int> virtualEquipRefresh; PlayerPackModel packModel { @@ -85,6 +87,7 @@ { ParseConfig(); fashionDressSelectDict = new Dictionary<int, int>(); fashionDressEquipDict = new Dictionary<int, int>(); FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent; packModel.RefreshItemCountAct += RefreshItemCountAct; } @@ -224,6 +227,24 @@ return 0; } public int GetSelectFashionDress(int type) { if (fashionDressSelectDict.ContainsKey(type)) { return fashionDressSelectDict[type]; } return 0; } public int GetVirtualEquipFashionDress(int type) { if (fashionDressEquipDict.ContainsKey(type)) { return fashionDressEquipDict[type]; } return 0; } public bool IsFashionDressUnlock(int id) { var level = GetFashionDressLevel(id); @@ -302,16 +323,6 @@ return list.Count > 0; } public bool TryGetSelect(int type, out int id) { id = 0; if (fashionDressSelectDict.ContainsKey(type)) { id = fashionDressSelectDict[type]; return true; } return false; } public bool TryLevelUp(int id, out int error) { @@ -345,12 +356,21 @@ } } public void SetPreviewFashionDress(int type, int id) public void SetSelectFashionDress(int type, int id) { fashionDressSelectDict[type] = id; if (previewRefresh != null) { previewRefresh(type); } } public void SetVirtualEquipFashionDress(int type, int id) { fashionDressEquipDict[type] = id; if (virtualEquipRefresh != null) { virtualEquipRefresh(type); } } @@ -384,22 +404,25 @@ public void TryEquip() { foreach (var type in fashionDressSelectDict.Keys) foreach (var type in fashionDressEquipDict.Keys) { var equipId = GetFashionDressEquipId(type); var previewId = fashionDressSelectDict[type]; var virtualEquipId = fashionDressEquipDict[type]; var index = fashionTypeMapPlaceDict[type]; if (previewId != 0) if (virtualEquipId != 0) { if (IsFashionDressUnlock(previewId) && previewId != equipId) if (IsFashionDressUnlock(virtualEquipId) && virtualEquipId != equipId) { SendEquipPackage((int)PackType.rptInterimPack, previewId, (int)PackType.rptEquip, index); SendEquipPackage((int)PackType.rptInterimPack, virtualEquipId, (int)PackType.rptEquip, index); } } else { SendEquipPackage((int)PackType.rptEquip, index, (int)PackType.rptInterimPack, 0); if (equipId != 0) { SendEquipPackage((int)PackType.rptEquip, index, (int)PackType.rptInterimPack, 0); } } } } System/FashionDress/FashionDressWin.cs
@@ -67,6 +67,7 @@ model.selectTypeRefresh += SelectTypeRefresh; model.selectQualityRefresh += SelectQualityRefresh; model.previewRefresh += PreviewRefresh; //model.virtualEquipRefresh += VirtualEquipRefresh; model.fashionDressRefresh += FashionDressRefresh; packModel.RefreshItemCountAct += RefreshItemCountAct; @@ -93,6 +94,7 @@ model.previewRefresh -= PreviewRefresh; packModel.RefreshItemCountAct -= RefreshItemCountAct; model.fashionDressRefresh -= FashionDressRefresh; //model.virtualEquipRefresh -= VirtualEquipRefresh; for (int i = 0; i < m_FashionDressTypes.Length; i++) { @@ -119,7 +121,8 @@ foreach (var fashionDressType in model.fashionDressTypes) { var equipId = model.GetFashionDressEquipId(fashionDressType); model.SetPreviewFashionDress(fashionDressType, equipId); model.SetVirtualEquipFashionDress(fashionDressType, equipId); model.SetSelectFashionDress(fashionDressType, equipId); } } @@ -176,24 +179,8 @@ void DisplayViewDetail() { var requireViewDetail = false; var id = 0; if (model.TryGetSelect(model.selectType, out id)) { if (id == 0) { var equipId = model.GetFashionDressEquipId(model.selectType); if (equipId != 0) { requireViewDetail = true; } } else { requireViewDetail = true; } } m_ContainerViewDetail.gameObject.SetActive(requireViewDetail); var selectFashionDress = model.GetSelectFashionDress(model.selectType); m_ContainerViewDetail.gameObject.SetActive(selectFashionDress != 0); } private void FashionDressCabinetRefresh() @@ -221,6 +208,16 @@ DisplayViewDetail(); } //private void VirtualEquipRefresh(int type) //{ // if (model.selectType == type) // { // m_ScrollerControl.m_Scorller.RefreshActiveCellViews(); // } // DisplayModel(); // DisplayViewDetail(); //} private void FashionDressRefresh(int id) { m_ScrollerControl.RefreshSingleCellView(id); @@ -246,7 +243,13 @@ || index == (int)RoleEquipType.retFashionWeapon2) { m_ScrollerControl.m_Scorller.RefreshActiveCellViews(); DisplayViewDetail(); foreach (var fashionDressType in model.fashionDressTypes) { var equipId = model.GetFashionDressEquipId(fashionDressType); model.SetVirtualEquipFashionDress(fashionDressType, equipId); model.SetSelectFashionDress(fashionDressType, equipId); } } } } @@ -324,21 +327,15 @@ private void ViewDetail() { var id = 0; if (model.TryGetSelect(model.selectType, out id)) var virtualEquipId = model.GetVirtualEquipFashionDress(model.selectType); var previewId = model.GetSelectFashionDress(model.selectType); if (previewId != 0) { if (id == 0) { var equipId = model.GetFashionDressEquipId(model.selectType); if (equipId != 0) { model.ViewFashionDressDetails(equipId); } } else { model.ViewFashionDressDetails(id); } model.ViewFashionDressDetails(previewId); } else if (virtualEquipId != 0) { model.ViewFashionDressDetails(virtualEquipId); } } }