//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Friday, October 13, 2017 //-------------------------------------------------------- using UnityEngine; using System.Collections; using UnityEngine.UI; using Snxxz.UI; using TableConfig; namespace Snxxz.UI { public class PotentialItemBehaviour : ScrollItem { [SerializeField] ItemBehaviour m_ItemBehaviour; [SerializeField] Text m_CostCount; [SerializeField] Text m_SuccessRatio; [SerializeField] Button m_Click; [SerializeField] Text m_AddBtnText; [SerializeField] SmoothMask m_SmoothMask; TreasureModel m_Model; TreasureModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel()); } } PlayerPackModel _playerPack; PlayerPackModel playerPack { get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel()); } } int own = 0; int need = 0; PotentialBook potentialBook; public override void Display(object _data) { base.Display(_data); potentialBook = (PotentialBook)_data; own = playerPack.GetItemCountByID(PackType.rptItem,potentialBook.itemId); need = potentialBook.needCount; m_ItemBehaviour.showCount = false; m_ItemBehaviour.SetItem(potentialBook.itemId, 1); m_CostCount.text = StringUtility.Contact(own, "/", need); m_CostCount.color = own >= need ? UIHelper.GetUIColor(TextColType.White) : UIHelper.GetUIColor(TextColType.Red); m_Click.interactable = own >= need; m_AddBtnText.color = own >= need ? UIHelper.GetUIColor(TextColType.NavyBrown) : UIHelper.GetUIColor(TextColType.White); m_Click.image.material = own >= need ? m_SmoothMask.imageMaterials[0] : m_SmoothMask.imageMaterials[1]; var config = Config.Instance.Get(potentialBook.levelUpId); var upRate = potentialBook.successRate - config.InitialRate; m_SuccessRatio.text = Language.Get("HallowsWin_UpSuccess", StringUtility.Contact((upRate * 0.01f).ToString("f0"), "%")); } private void SelectPotentialBook() { if (own >= need) { model.selectedPotentialBook = potentialBook.itemId; WindowCenter.Instance.Close(); } else { SysNotifyMgr.Instance.ShowTip("SPItemNotEnough"); } } private void Awake() { m_Click.AddListener(SelectPotentialBook); } } }