| | |
| | | private bool waitingJump = false;
|
| | |
|
| | | PlayerDeadModel deadModel { get { return ModelCenter.Instance.GetModel<PlayerDeadModel>(); } }
|
| | | PlayerPackModel packModel { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
|
| | |
|
| | | public override void Init()
|
| | | {
|
| | |
| | | WindowCenter.Instance.windowAfterOpenEvent += WindowAfterOpenEvent;
|
| | | TimeUtility.OnServerOpenDayRefresh += OnServerOpenDayRefresh;
|
| | | TreasureNewGotWin.CloseTreasureNewGotWinEvent += CloseTreasureNewGotWinEvent;
|
| | | NewBieCenter.Instance.guideCompletedEvent += GuideCompletedEvent;
|
| | | packModel.RefreshItemCountAct += RefreshItemCountAct;
|
| | | StageManager.Instance.onStageLoadFinish += OnStageLoadFinish;
|
| | | }
|
| | |
|
| | | public override void UnInit()
|
| | | {
|
| | |
|
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= PlayerDataRefreshInfoEvent;
|
| | | SDKUtility.Instance.onFreePlatformPayCancel -= OnChargeFail;
|
| | | SDKUtility.Instance.onFreePlatformPayFail -= OnChargeFail;
|
| | | SDKUtility.Instance.onFreePlatformPayOk -= OnChargeComplete;
|
| | | WindowCenter.Instance.windowAfterOpenEvent -= WindowAfterOpenEvent;
|
| | | TimeUtility.OnServerOpenDayRefresh -= OnServerOpenDayRefresh;
|
| | | TreasureNewGotWin.CloseTreasureNewGotWinEvent -= CloseTreasureNewGotWinEvent;
|
| | | NewBieCenter.Instance.guideCompletedEvent -= GuideCompletedEvent;
|
| | | packModel.RefreshItemCountAct -= RefreshItemCountAct;
|
| | | StageManager.Instance.onStageLoadFinish -= OnStageLoadFinish;
|
| | | }
|
| | |
|
| | | public void OnBeforePlayerDataInitialize()
|
| | |
| | | get; private set;
|
| | | }
|
| | |
|
| | | public int vipExperienceItemId { get; private set; }
|
| | |
|
| | | public int gotoVipLv { get; set; }
|
| | |
|
| | | private bool m_ChargeReset = true;
|
| | |
| | | m_VipExperienceDic = ConfigParse.GetDic<int, int>(cfg.Numerical1);
|
| | | cfg = Config.Instance.Get<FuncConfigConfig>("PayRMB");
|
| | | vipExpMoney = int.Parse(cfg.Numerical1);
|
| | | cfg = Config.Instance.Get<FuncConfigConfig>("VIPExperienceCard");
|
| | | vipExperienceItemId = int.Parse(cfg.Numerical1);
|
| | | }
|
| | |
|
| | | private void ParseVipGift()
|
| | |
| | | if (_experienceTime > 0)
|
| | | {
|
| | | TimeMgr.Instance.Register(TimeMgr.SyntonyType.VipExperirnceOverdue, _experienceTime);
|
| | | if (serverInited)
|
| | | {
|
| | | popExperienceWindow = true;
|
| | | CheckAutoPopExperienceWin();
|
| | | }
|
| | | }
|
| | | if (OnVipTimeEvent != null) OnVipTimeEvent();
|
| | | if (OnVipTimeEvent != null)
|
| | | {
|
| | | OnVipTimeEvent();
|
| | | }
|
| | | }
|
| | |
|
| | | public bool IsVipActive()
|
| | |
| | | int surplusTime = Mathf.Max(0, (int)(vipExperienceOverdue - TimeUtility.ServerNow).TotalSeconds);
|
| | | return surplusTime > 0;
|
| | | }
|
| | |
|
| | | #region 自动弹出Vip体验界面
|
| | | bool popExperienceWindow = false;
|
| | | public void CheckAutoPopExperienceWin()
|
| | | {
|
| | | if (!popExperienceWindow)
|
| | | {
|
| | | return;
|
| | | }
|
| | | if (!(StageManager.Instance.CurrentStage is DungeonStage))
|
| | | {
|
| | | return;
|
| | | }
|
| | | if (!WindowCenter.Instance.IsOpen<MainInterfaceWin>()
|
| | | || WindowCenter.Instance.ExitAnyFullScreenOrMaskWin()
|
| | | || NewBieCenter.Instance.inGuiding
|
| | | || WindowCenter.Instance.IsOpen<VipExperienceWin>())
|
| | | {
|
| | | return;
|
| | | }
|
| | | popExperienceWindow = false;
|
| | | WindowCenter.Instance.Open<VipExperienceWin>();
|
| | | }
|
| | |
|
| | | private void RefreshItemCountAct(PackType packType, int _index, int itemId)
|
| | | {
|
| | | if (serverInited && itemId == vipExperienceItemId)
|
| | | {
|
| | | CheckUseVipExperienceCard();
|
| | | }
|
| | | }
|
| | |
|
| | | private void CheckUseVipExperienceCard()
|
| | | {
|
| | | if (PlayerDatas.Instance.baseData.VIPLv > 0)
|
| | | {
|
| | | return;
|
| | | }
|
| | | if (IsVipExperience())
|
| | | {
|
| | | return;
|
| | | }
|
| | | var singlepack = packModel.GetSinglePackModel(PackType.rptItem);
|
| | | if (singlepack != null)
|
| | | {
|
| | | List<ItemModel> list = null;
|
| | | var count = singlepack.GetItemCountByID(vipExperienceItemId, out list);
|
| | | if (count > 0 && list != null && list.Count > 0)
|
| | | {
|
| | | var itemModel = list[0];
|
| | | CA323_tagCMUseItems pak = new CA323_tagCMUseItems();
|
| | | pak.ItemIndex = (byte)itemModel.itemInfo.ItemPlace;
|
| | | pak.UseCnt = 1;
|
| | | pak.ExData = 0;
|
| | | GameNetSystem.Instance.SendInfo(pak);
|
| | | }
|
| | | }
|
| | | }
|
| | | #endregion
|
| | |
|
| | | #region 打开Vip界面
|
| | | public void OpenVipPayUI(VipWinType type)
|
| | | {
|
| | |
| | | }
|
| | | return -1;
|
| | | }
|
| | |
|
| | | #region 充值
|
| | | public Dictionary<int, int> firstRechargeWeapon { get; private set; }
|
| | | public Dictionary<int, List<AwardItem>> m_RechargeGainItemDict { get; private set; }
|
| | |
| | | {
|
| | | if (_win is MainInterfaceWin)
|
| | | {
|
| | | if (!firstChargeRewardGet)
|
| | | if (!firstChargeRewardGet || popExperienceWindow)
|
| | | {
|
| | | SnxxzGame.Instance.StartCoroutine(Co_Load());
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | private void OnStageLoadFinish()
|
| | | {
|
| | | if (!(StageManager.Instance.CurrentStage is DungeonStage))
|
| | | {
|
| | | popExperienceWindow = false;
|
| | | }
|
| | | }
|
| | |
|
| | | private void GuideCompletedEvent(int _id)
|
| | | {
|
| | | if (popExperienceWindow)
|
| | | {
|
| | | SnxxzGame.Instance.StartCoroutine(Co_CheckPopExperienceWin());
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | IEnumerator Co_Load()
|
| | | {
|
| | | yield return WaitingForSecondConst.WaitMS500;
|
| | | CheckOpenFirstRechargeWin();
|
| | | if (!firstChargeRewardGet)
|
| | | {
|
| | | CheckOpenFirstRechargeWin();
|
| | | }
|
| | | if (popExperienceWindow)
|
| | | {
|
| | | CheckAutoPopExperienceWin();
|
| | | }
|
| | | }
|
| | |
|
| | | IEnumerator Co_CheckPopExperienceWin()
|
| | | {
|
| | | yield return WaitingForSecondConst.WaitMS500;
|
| | | if (popExperienceWindow)
|
| | | {
|
| | | CheckAutoPopExperienceWin();
|
| | | }
|
| | | }
|
| | |
|
| | | private void CheckOpenFirstRechargeWin()
|
| | |
| | | ResetGiftRedpoint = true;
|
| | | }
|
| | | UpdateGiftRedpoint();
|
| | | CheckUseVipExperienceCard();
|
| | | }
|
| | | #endregion
|
| | | }
|