From 1cb2f2172969f760b4a92a13c6ff2605f96ba73d Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期六, 18 八月 2018 14:12:40 +0800
Subject: [PATCH] 法宝魂修改
---
System/Treasure/TreasureSoulBehaviour.cs | 39 ++++++++++++++++++++++++++++++++++++++-
1 files changed, 38 insertions(+), 1 deletions(-)
diff --git a/System/Treasure/TreasureSoulBehaviour.cs b/System/Treasure/TreasureSoulBehaviour.cs
index 7b28400..54672d5 100644
--- a/System/Treasure/TreasureSoulBehaviour.cs
+++ b/System/Treasure/TreasureSoulBehaviour.cs
@@ -28,6 +28,8 @@
}
}
+ AchievementModel achievementModel { get { return ModelCenter.Instance.GetModel<AchievementModel>(); } }
+
private void Awake()
{
m_SelectBtn.onClick.AddListener(OnSelect);
@@ -37,12 +39,26 @@
{
model.treasureSelectSoulChangeEvent += TreasureSelectSoulChangeEvent;
model.treasureSoulEvent += TreasureSoulEvent;
+ achievementModel.achievementCompletedEvent += AchievementCompletedEvent;
}
private void OnDisable()
{
model.treasureSelectSoulChangeEvent -= TreasureSelectSoulChangeEvent;
model.treasureSoulEvent -= TreasureSoulEvent;
+ achievementModel.achievementCompletedEvent -= AchievementCompletedEvent;
+ }
+
+ private void AchievementCompletedEvent(int _id)
+ {
+ int achievementId = 0;
+ if (model.TryGetRealmAchievement(treasureSoulId, out achievementId))
+ {
+ if (achievementId == _id)
+ {
+ DisplayState();
+ }
+ }
}
public void Display(int _id)
@@ -69,11 +85,32 @@
{
if (special.active)
{
+ m_Lock.gameObject.SetActive(false);
m_SoulState.text = Language.Get("TreasureSoul_Awoke");
}
else
{
- m_SoulState.text = Language.Get("TreasureSoul_Awaking");
+ int achievementId = 0;
+ bool unlock = true;
+ if (model.TryGetRealmAchievement(treasureSoulId, out achievementId))
+ {
+ Achievement achievement;
+ if (achievementModel.TryGetAchievement(achievementId, out achievement))
+ {
+ unlock = achievement.completed;
+ }
+ }
+ m_Lock.gameObject.SetActive(!unlock);
+ if (unlock)
+ {
+ m_SoulState.text = Language.Get("TreasureSoul_Awaking");
+ }
+ else
+ {
+ var successConfig = ConfigManager.Instance.GetTemplate<SuccessConfig>(achievementId);
+ var realmConfig = ConfigManager.Instance.GetTemplate<RealmConfig>(successConfig.Condition[0]);
+ m_SoulState.text = string.Format("澧冪晫<Img img={0}/>瑙i攣", realmConfig.Img);
+ }
}
}
}
--
Gitblit v1.8.0