//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Tuesday, September 12, 2017
|
//--------------------------------------------------------
|
using UnityEngine;
|
using System.Collections;
|
using UnityEngine.UI;
|
|
using System;
|
|
namespace vnxbqy.UI
|
{
|
|
public class TaiChiBreifInfo : MonoBehaviour
|
{
|
[Header("Text")]
|
[SerializeField]
|
Text m_OpenTime;
|
[SerializeField]
|
Text m_SurplusTimes;
|
[SerializeField]
|
Text m_DungeonForm;
|
[SerializeField]
|
Text m_LevelLimit;
|
[SerializeField]
|
Text m_Description;
|
|
[Header("Item")]
|
[SerializeField]
|
ItemBehaviour[] m_Rewards;
|
|
TaiChiModel _taiChiModel;
|
TaiChiModel taiChiModel
|
{
|
get { return _taiChiModel ?? (_taiChiModel = ModelCenter.Instance.GetModel<TaiChiModel>()); }
|
}
|
|
DailyQuestModel m_Model;
|
DailyQuestModel model
|
{
|
get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<DailyQuestModel>()); }
|
}
|
|
private void OnEnable()
|
{
|
taiChiModel.RefreshTaiChiModel += RefreshUI;
|
}
|
|
private void OnDisable()
|
{
|
taiChiModel.RefreshTaiChiModel -= RefreshUI;
|
}
|
|
private void RefreshUI()
|
{
|
UpdateDungeonTimes();
|
}
|
|
private void UpdateDungeonTimes()
|
{
|
var completedTimes = taiChiModel.dailyQuestModel.GetDailyQuestCompletedTimes(taiChiModel.TaiChiDailyTaskID);
|
var totalTimes = taiChiModel.dailyQuestModel.GetDailyQuestTotalTimes(taiChiModel.TaiChiDailyTaskID);
|
|
m_SurplusTimes.text = StringUtility.Contact(totalTimes - completedTimes, "/", totalTimes);
|
m_SurplusTimes.color = (totalTimes - completedTimes) > 0 ? UIHelper.GetUIColor(TextColType.NavyBrown) : UIHelper.GetUIColor(TextColType.Red);
|
|
}
|
|
public void SetDungeonInfo(Dungeon _dungeon)
|
{
|
var config = DailyQuestConfig.Get(taiChiModel.TaiChiDailyTaskID);
|
FuncOpenLVConfig openLVConfig = FuncOpenLVConfig.Get(config.UnLockFuncID);
|
|
DailyQuestOpenTime openTime;
|
if (model.TryGetOpenTime(model.currentDailyQuest, out openTime))
|
{
|
if (openTime.always)
|
{
|
m_OpenTime.text = Language.Get("DailyQuest_NoTimeLimit");
|
}
|
else
|
{
|
m_OpenTime.text = openTime.ToOpenTimeString();
|
}
|
}
|
else
|
{
|
m_OpenTime.text = string.Empty;
|
}
|
|
UpdateDungeonTimes();
|
m_DungeonForm.text = config.QuestTypeDescribe;
|
m_LevelLimit.text = openLVConfig.LimitLV.ToString();
|
var playerLevel = PlayerDatas.Instance.baseData.LV;
|
m_LevelLimit.color = playerLevel >= openLVConfig.LimitLV ? UIHelper.GetUIColor(TextColType.NavyBrown) : UIHelper.GetUIColor(TextColType.Red, true);
|
m_Description.text = Language.Get("WytjActivityDes");
|
|
for (int i = 0; i < m_Rewards.Length; i++)
|
{
|
var behaviour = m_Rewards[i];
|
if (i < config.RewardID.Length)
|
{
|
behaviour.SetActive(true);
|
behaviour.showCount = true;
|
behaviour.SetItem(config.RewardID[i], 0);
|
}
|
else
|
{
|
behaviour.SetActive(false);
|
}
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|