using System; using FGUI.Arrow_game; using UnityEngine; namespace ChillConnect { public class ArrowTipsUI : BaseUI { private ArrowTipsUICtrl ctrl; private ArrowTipsModel model; private com_tips ui; public ArrowTipsUI(ArrowTipsUICtrl ctrl) : base(ctrl) { uiName = UIConst.ArrowTipsUI; this.ctrl = ctrl; } protected override void SetUIInfo(UIInfo uiInfo) { uiInfo.packageName = "Arrow_game"; uiInfo.assetName = "com_tips"; uiInfo.layerType = UILayerType.Popup; uiInfo.isNeedUIMask = true; uiInfo.isNeedOpenAnim = true; uiInfo.isNeedCloseAnim = true; } protected override void OnInit() { } protected override void OnClose() { GameDispatcher.Instance.Dispatch(GameMsg.StopArrowTouch, true); CommonHelper.FadeOut(ui); HallManager.Instance.UpdateSecondEvent -= UpdateCd; } protected override void OnBind() { ui = baseUI as com_tips; } private int state_; protected override void OnOpenBefore(object args) { GameDispatcher.Instance.Dispatch(GameMsg.StopArrowTouch, false); if (args != null) { InitView((int)args); state_ = (int)args + 5; } HallManager.Instance.UpdateSecondEvent += UpdateCd; UpdateCd(); } protected override void OnOpen(object args) { CommonHelper.FadeIn(ui); } protected override void AddListener() { } protected override void RemoveListener() { } private void InitView(int type) { int state = type; Debug.Log($"tips state = {state} "); // 0 提示 1 删除道具 ui.state.selectedIndex = state; ui.btn_watch.SetClick(() => { string idStr = state == 1 ? "deletePop" : "HintPop"; GameHelper.ShowVideoAd(idStr, isSuccess => { if (isSuccess) { Debug.Log($"isSuccess tips state = {state} "); GameHelper.SetWatchCd(state_); GameDispatcher.Instance.Dispatch(GameMsg.UseProps, state); CtrlCloseUI(); } }); }); ui.btn_close.SetClick(CtrlCloseUI); } private void UpdateCd() { var btnWatch = ui.btn_watch ; // Debug.Log($"DataMgr.NewWatchCd.Value[state_ + 2]==={DataMgr.NewWatchCd.Value[state_ + 2]}"); if (DataMgr.NewWatchCd.Value[state_] > Convert.ToInt32(GameHelper.GetNowTime())) { btnWatch.enabled = false; btnWatch.can.selectedIndex = 1; btnWatch.text.text = CommonHelper.TimeFormat(DataMgr.NewWatchCd.Value[state_] - Convert.ToInt32(GameHelper.GetNowTime()), CountDownType.Hour); } else { ui.btn_watch.enabled = true; btnWatch.can.selectedIndex = 0; btnWatch.text.text = "Use Item"; } } } }