| | |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | using TableConfig; |
| | | namespace Snxxz.UI { |
| | | namespace Snxxz.UI
|
| | | { |
| | | |
| | | public class OSRedEnvelopeSendWin : Window |
| | | { |
| | |
| | | [SerializeField] Text m_Count; |
| | | [SerializeField] Button m_SendBtn; |
| | | [SerializeField] Button m_CloseBtn; |
| | | OSRedEnvelopeModel m_Model; |
| | | OSRedEnvelopeModel model |
| | | { |
| | | get |
| | | { |
| | | return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<OSRedEnvelopeModel>()); |
| | | } |
| | | } |
| | | |
| | | AchievementModel m_AchievementModel; |
| | | AchievementModel achieveModel |
| | | public static int achievementId = 0; |
| | | |
| | | AchievementModel model |
| | | { |
| | | get |
| | | { |
| | | return m_AchievementModel ?? (m_AchievementModel = ModelCenter.Instance.GetModel<AchievementModel>()); |
| | | return ModelCenter.Instance.GetModel<AchievementModel>(); |
| | | } |
| | | } |
| | | #region Built-in |
| | |
| | | |
| | | protected override void AddListeners() |
| | | { |
| | | m_SendBtn.onClick.AddListener(() => |
| | | { |
| | | var _outDay = ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().openDays; |
| | | if (TimeUtility.OpenDay >= _outDay) |
| | | { |
| | | SysNotifyMgr.Instance.ShowTip("ActiveOutTime"); |
| | | return; |
| | | } |
| | | achieveModel.GetAchievementReward(model.cacheAchievement); |
| | | CloseImmediately(); |
| | | }); |
| | | m_SendBtn.onClick.AddListener(Send); |
| | | m_CloseBtn.onClick.AddListener(CloseClick); |
| | | } |
| | | |
| | |
| | | |
| | | private void DisplayRedEnvelope() |
| | | { |
| | | var _achieveCfg = Config.Instance.Get<SuccessConfig>(model.cacheAchievement); |
| | | var _cfg = Config.Instance.Get<RedPackConfig>(_achieveCfg.RedPacketID); |
| | | m_MoneyValue.text = _cfg.RedEnvelopeAmount.ToString(); |
| | | m_MoneyRealValue.text = _cfg.RedEnvelopeAmount.ToString(); |
| | | m_Count.text = _cfg.PacketCnt.ToString(); |
| | | var successConfig = Config.Instance.Get<SuccessConfig>(achievementId); |
| | | var config = Config.Instance.Get<RedPackConfig>(successConfig.RedPacketID); |
| | | m_MoneyValue.text = config.RedEnvelopeAmount.ToString(); |
| | | m_MoneyRealValue.text = config.RedEnvelopeAmount.ToString(); |
| | | m_Count.text = config.PacketCnt.ToString(); |
| | | } |
| | | |
| | | private void Send()
|
| | | {
|
| | | var successConfig = Config.Instance.Get<SuccessConfig>(achievementId); |
| | | var config = Config.Instance.Get<RedPackConfig>(successConfig.RedPacketID);
|
| | | if (config != null)
|
| | | {
|
| | | switch (config.RedEnvelopeType)
|
| | | {
|
| | | case 5:
|
| | | var _outDay = ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().openDays;
|
| | | if (TimeUtility.OpenDay >= _outDay)
|
| | | {
|
| | | SysNotifyMgr.Instance.ShowTip("ActiveOutTime");
|
| | | return;
|
| | | }
|
| | | break;
|
| | | case FestivalRedpackModel.FESTIVALTASKREDPACKTYPE:
|
| | | var isOpen = ModelCenter.Instance.GetModel<FestivalRedpackModel>().IsOpen;
|
| | | if (!isOpen)
|
| | | {
|
| | | SysNotifyMgr.Instance.ShowTip("ActiveOutTime");
|
| | | return;
|
| | | }
|
| | | break;
|
| | | }
|
| | | } |
| | | model.GetAchievementReward(achievementId);
|
| | | CloseImmediately();
|
| | | } |
| | | } |
| | | |