From fe00e5af27aa1e7019d2a3eeb931fa8d70b4a02f Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期五, 15 三月 2019 14:18:17 +0800
Subject: [PATCH] 6346 【前端】【2.0】宗门试炼解锁条件修改
---
System/Dungeon/TrialDungeonSelectBehaviour.cs | 121 +++++++++++-----------------------------
1 files changed, 34 insertions(+), 87 deletions(-)
diff --git a/System/Dungeon/TrialDungeonSelectBehaviour.cs b/System/Dungeon/TrialDungeonSelectBehaviour.cs
index 61a24e8..e6e913c 100644
--- a/System/Dungeon/TrialDungeonSelectBehaviour.cs
+++ b/System/Dungeon/TrialDungeonSelectBehaviour.cs
@@ -12,46 +12,23 @@
public class TrialDungeonSelectBehaviour : ScrollItem
{
-
- [Header("Button")]
- [SerializeField]
- Button m_SelectButton;
-
- [Header("Image")]
- [SerializeField]
- Image m_BackGround;
- [SerializeField]
- Image m_SceneBG;
- [SerializeField]
- Image m_TitleIcon;
- [SerializeField]
- Image m_BossIcon;
- [SerializeField]
- Image m_BossFrame;
-
- [SerializeField]
- Text m_DungeonName;
- [SerializeField]
- Text m_BossLevel;
- [SerializeField]
- Text m_LevelLimit;
-
- [SerializeField] RectTransform m_ContainerHighest;
- [SerializeField] Image m_HighestGrade;
-
+ [SerializeField] Button m_SelectButton;
+ [SerializeField] Image m_BackGround;
+ [SerializeField] Image m_SceneBG;
+ [SerializeField] Image m_TitleIcon;
+ [SerializeField] Image m_BossIcon;
+ [SerializeField] Image m_BossFrame;
+ [SerializeField] Text m_DungeonName;
+ [SerializeField] Text m_PlayerLevel;
+ [SerializeField] Text m_PetHorseLevel;
+ [SerializeField] Text m_ChallengeRemind;
[SerializeField] SmoothMask m_SmoothMask;
- [SerializeField]
- Transform m_Other;
-
Dungeon dungeon;
- DungeonRecord dungeonRecord;
TrialDungeonSelectWin m_TrailDungeonSelectWin;
- DungeonModel m_Model;
- DungeonModel model {
- get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<DungeonModel>()); }
- }
+ DungeonModel model { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
+ TrialDungeonModel trialDungeonModel { get { return ModelCenter.Instance.GetModel<TrialDungeonModel>(); } }
public override void Display(object _data)
{
@@ -88,49 +65,38 @@
var _npcId = config.BossActorID[0];
var bossConfig = NPCConfig.Get(_npcId);
- m_BossLevel.text = Language.Get("Z1024", config.LVLimitMin);
- m_BossLevel.color = PlayerDatas.Instance.baseData.LV >= config.LVLimitMin ?
+
+ m_PlayerLevel.text = Language.Get("Z1024", config.LVLimitMin);
+ m_PlayerLevel.color = PlayerDatas.Instance.baseData.LV >= config.LVLimitMin ?
UIHelper.GetUIColor(TextColType.Green, true) : UIHelper.GetUIColor(TextColType.Red, true);
+ var requirePetHorseLevel = trialDungeonModel.GetDungeonRequirePetHorseLevel(_dungeon.lineId);
+ var petHorseLevel = trialDungeonModel.GetPetHorseLevel();
+ m_PetHorseLevel.text = Language.Get("Z1024", requirePetHorseLevel);
+ m_PetHorseLevel.color = petHorseLevel >= requirePetHorseLevel ?
+ UIHelper.GetUIColor(TextColType.Green, true) : UIHelper.GetUIColor(TextColType.Red, true);
+
+ DungeonRecord dungeonRecord;
model.TryGetRecord(_dungeon.mapId, out dungeonRecord);
- int prestar = 1;
- int star = 0;
- dungeonRecord.lineGrades.TryGetValue(config.LineID, out star);
- if (config.LineID > 0)
+ bool prefloorPass = _dungeon.lineId == 0;
+ if (_dungeon.lineId > 0 && dungeonRecord != null)
{
- dungeonRecord.lineGrades.TryGetValue(config.LineID - 1, out prestar);
- }
- else
- {
- prestar = 5;
+ var grade = 0;
+ dungeonRecord.lineGrades.TryGetValue(config.LineID - 1, out grade);
+ prefloorPass = grade > 0;
}
- m_ContainerHighest.gameObject.SetActive(star > 0);
- if (star > 0)
+ if (PlayerDatas.Instance.baseData.LV < config.LVLimitMin
+ || petHorseLevel < requirePetHorseLevel || !prefloorPass)
{
- m_HighestGrade.SetSprite(StringUtility.Contact("Remark_", GetStar(star)));
- m_HighestGrade.SetNativeSize();
- var sizeDelta = m_HighestGrade.rectTransform.sizeDelta;
- m_HighestGrade.rectTransform.sizeDelta = sizeDelta * 0.76f;
- }
-
- if (PlayerDatas.Instance.baseData.LV < config.LVLimitMin)
- {
- m_LevelLimit.text = Language.Get("TrialDungeonLevelLimit");
- m_LevelLimit.color = UIHelper.GetUIColor(TextColType.Red, true);
- SetImageGray(true);
- }
- else if (prestar < GeneralDefine.munekadolockLimit)
- {
- m_LevelLimit.text = Language.Get("TrialDungeonGradeLimit",
- Language.Get(StringUtility.Contact("Num_CHS_", config.LineID)), UIHelper.GetGrade(GeneralDefine.munekadolockLimit));
- m_LevelLimit.color = UIHelper.GetUIColor(TextColType.Red, true);
+ m_ChallengeRemind.text = Language.Get("TrialDungeonLock");
+ m_ChallengeRemind.color = UIHelper.GetUIColor(TextColType.Red, true);
SetImageGray(true);
}
else
{
- m_LevelLimit.text = Language.Get("TrialDungeonLocked");
- m_LevelLimit.color = UIHelper.GetUIColor(TextColType.Green, true);
+ m_ChallengeRemind.text = Language.Get("TrialDungeonUnLock");
+ m_ChallengeRemind.color = UIHelper.GetUIColor(TextColType.NavyBrown, true);
SetImageGray(false);
}
@@ -144,7 +110,7 @@
private void Select()
{
- m_TrailDungeonSelectWin.currentSelectDungeon=dungeon;
+ m_TrailDungeonSelectWin.currentSelectDungeon = dungeon;
model.selectedTrialDungeon = dungeon;
WindowCenter.Instance.Open<TrialDungeonEntranceWin>();
}
@@ -160,26 +126,7 @@
m_BossIcon.material = _gray ? m_SmoothMask.imageMaterials[1] : m_SmoothMask.imageMaterials[0];
m_TitleIcon.material = _gray ? m_SmoothMask.imageMaterials[1] : m_SmoothMask.imageMaterials[0];
}
-
- private string GetStar(int star)
- {
- switch (star)
- {
- case 5:
- return "S";
- case 4:
- return "A";
- case 3:
- return "B";
- case 2:
- return "C";
- default:
- return "D";
- }
- }
-
}
-
}
--
Gitblit v1.8.0