var t = require; var e = module; var i = exports; Object.defineProperty(i, "__esModule", { value: !0 }), (i.ADController = i.AdSharePriority = i.AdShareStatus = i.InterAdType = i.AdType = void 0); const c = t("App"), n = t("GameText"), s = t("BaseController"), o = t("ViewManager"), r = t("Toast"), a = t("NotificationConst"), l = t("ViewConst"), h = t("ADManageBase"), d = t("ADModel"); var u, p; ((t = i.AdType || (i.AdType = {}))[(t.IDLE_DOUBLE = 0)] = "IDLE_DOUBLE"), (t[(t.IDLE_5X = 1)] = "IDLE_5X"), (t[(t.AD_RATE_BUFF = 2)] = "AD_RATE_BUFF"), (t[(t.AD_REWRAD = 3)] = "AD_REWRAD"), (t[(t.BUFF_EMPLOYEE_PRODUCTION_SPEED = 4)] = "BUFF_EMPLOYEE_PRODUCTION_SPEED"), (t[(t.BUFF_EMPLOYEE_MOVE_SPEED = 5)] = "BUFF_EMPLOYEE_MOVE_SPEED"), (t[(t.BUFF_CUSTOMER_MOVE_SPEED = 6)] = "BUFF_CUSTOMER_MOVE_SPEED"), (t[(t.SHOP_BOX = 7)] = "SHOP_BOX"), ((t = i.InterAdType || (i.InterAdType = {}))[(t.normal = 0)] = "normal"), (t[(t.full = 1)] = "full"), ((t = u = i.AdShareStatus || (i.AdShareStatus = {}))[(t.NONE = 0)] = "NONE"), (t[(t.AD = 1)] = "AD"), (t[(t.SHARE = 2)] = "SHARE"), (t[(t.PAY = 3)] = "PAY"), (t[(t.SUPER_CASH = 4)] = "SUPER_CASH"), (t[(t.FREE = 5)] = "FREE"), ((t = p = i.AdSharePriority || (i.AdSharePriority = {}))[(t.NONE = 0)] = "NONE"), (t[(t.AD = 1)] = "AD"), (t[(t.SHARE = 2)] = "SHARE"), (t[(t.PAY = 3)] = "PAY"), (t[(t.SUPER_CASH = 4)] = "SUPER_CASH"); class f extends s.default { constructor() { super(), (this.adResolve = null), (this.curAdType = null), (this.curAdStatus = null), (this._model = null), this.init(), (this._model = new d.ADModel(this)), c.default.NotificationCenter.addListener(a.NotificationConst.INIT_GAME_FINISH, this.initGame, this, 1); } static getInstance() { return null == this.instance && (this.instance = new f()), this.instance; } get isRemoveAD() { return false;//this._model.adAndShareData.isRemoveAd; } init() { this.registerFunc(0, this.openAdByTypeAsync, this), this.registerFunc(1, this.registerItem, this), this.registerFunc(2, this.unregisterItem, this), this.registerFunc(3, this.getAdTabData, this), this.registerFunc(4, this.getAdCntData, this), this.registerFunc(5, this.adIsHas, this), this.registerFunc(8, this.onGetIsFree, this), this.registerFunc( 6, t => { this._model.adAndShareData.isRemoveAd = false// t ? 1 : 0; }, this ), c.default.NotificationCenter.addListener(h.AdEvent.AD_SWITCH_STATUS, this.changeBtnWithADStatus, this), c.default.NotificationCenter.addListener(h.AdEvent.SHOW_AD_RESULT, this.onShowAdResult, this), c.default.NotificationCenter.addListener(a.NotificationConst.ON_HIDE, this.onHide, this), c.default.NotificationCenter.addListener(a.NotificationConst.LOGOUT, this.onLogout, this); } onHide() { this.adResolve; } initGame() { this._model.initShareStaticData(), c.default.NotificationCenter.removeListener(a.NotificationConst.INIT_GAME_FINISH, this.initGame, this); } onSystemOpen(t, e) { } initInteractionAd() { c.default.NotificationCenter.addListener(o.default.VIEW_IS_OPEN, this.onViewOpen, this), (this._model.interactionAdConf = c.default.ConfigManager.gameConf.interactionAd), c.default.TimerManager.doTimer( this._model.interactionAdConf.startShowTime, 1, this.showInteractionAdTimer, this ); } showInteractionAdTimer() { this.showInteractionAd(); } onViewOpen(t) { } onViewClose(t) { t = l.ViewConst[t]; this._model.interactionAdConf.view[t] && (Math.random() < this._model.interactionAdConf.view[t] + this._model.interProbability ? (this.showInteractionAd(), (this._model.interProbability = 0)) : this._model.interProbability < 0.5 && (this._model.interProbability += 0.04)); } showInteractionAd() { } getAdTabData(t) { return this._model.getAdShareConf(t); } getAdCntData(t) { return this._model.getData(t); } adIsHas(t) { var e = this._model.getAdShareConf(t), t = this._model.getData(t); return e.adTimes > t.adCnt; } onLogout() { this._model.reset(), c.default.NotificationCenter.addListener(a.NotificationConst.INIT_GAME_FINISH, this.initGame, this, 1); } changeBtnWithADStatus() { for (var t in this._model.registerItems) { var e = parseInt(t); for (const i of this._model.registerItems[t]) this.checkItem(e, i); } } onShowAdResult(e) { var i = 0 === e.code; if (i && null !== this.curAdType) { e.status = this.curAdStatus; let t = this._model.getData(this.curAdType); this.curAdStatus === u.AD ? (t.adCnt++, this._model.addAdNum(), c.default.AnalyticMgr.AD(this.curAdType, i ? 1 : 0)) : this.curAdStatus === u.FREE ? this.isRemoveAD ? t.adCnt++ : t.freeCnt++ : this.curAdStatus === u.SHARE ? (t.shareCnt++, c.default.AnalyticMgr.AD(this.curAdType + 1e3, i ? 1 : 0)) : this.curAdStatus === u.SUPER_CASH && t.superCashCnt++, (this.curAdStatus = this.curAdType = null), localStorage.getItem("isfirstAD") || (localStorage.setItem("isfirstAD", "isfirstAD"), console.log("第一次观看广告"), c.default.AnalyticMgr.recordFirstAD({ api_token: c.default.GameDataMsr.playerInfo.token, type: this.curAdType, module: "first_ad" })); } this.adResolve && (this.adResolve(e), (this.adResolve = null)), this.changeBtnWithADStatus(), c.default.TimerManager.doTimer( 1e3, 1, () => { c.default.SoundManager.resumeMusic(); }, this ); } openAdByTypeAsync(o, a) { return new Promise(t => { let e = this._model.adShareStatus[o]; isNaN(e) && t(!1); var i = c.default.Platform.getAdState(o); if (1 == i) return r.default.launch(n.GameText.getText(61)), void t(!1); if (3 == i) return r.default.launch(n.GameText.getText(62)), void t(!1); if ( ((this.curAdType = o), (this.adResolve = t), (this.curAdStatus = e), e == u.NONE && r.default.launch(n.GameText.getText(60)), e == u.AD) ) c.default.SoundManager.pauseMusic(), c.default.Platform.showAD(o); else if (e == u.FREE) this.onShowAdResult({ code: 0 }); else if (e == u.SHARE) { c.default.SoundManager.pauseMusic(); var s = this._model.getShareData(); c.default.Platform.share(o, { url: s.sharePic, title: s.shareMessage, description: "", paramList: { chl: c.default.ConfigManager.gameConf.channel, playerid: c.default.GameDataMsr.playerInfo.id + "", shareType: o }, extraParam: a }); } else if (e == u.SUPER_CASH) { (t = this._model.getAdShareConf(o)), (s = this._model.getData(o)); const e = (t.price - s.superCashCnt * t.addSuperCash) * (a || 1); WorldScene.instance.subSuperMoney(e) ? (this.onShowAdResult({ code: 0 }), c.default.Platform.recordDiamondCost(o + 100, e)) : this.onShowAdResult({ code: -1 }); } else this.onShowAdResult({ code: -1 }); }); } unregisterItem(t, e) { this._model.registerItems[t] && (-1 < (e = this._model.registerItems[t].indexOf(e)) && this._model.registerItems[t].splice(e, 1), 0 === this._model.registerItems[t].length && delete this._model.registerItems[t]); } registerItem(t, e) { this._model.registerItems[t] ? -1 === this._model.registerItems[t].indexOf(e) && (this._model.registerItems[t].push(e), this.checkItem(t, e)) : ((this._model.registerItems[t] = [e]), this.checkItem(t, e)); } isCanToShare(t) { var e = this._model.getData(t), t = this._model.getAdShareConf(t); return e.shareCnt < t.shareTimes; } checkItem(t, e) { var i = this._model.getData(t); if (i) { var s = this._model.getAdShareConf(t); if (e && s) { var o = i.adCnt, a = i.shareCnt, n = i.freeCnt || 0, r = o + a + n, l = c.default.Platform.isCanShare() && 0 < s.shareTimes && s.shareTimes > a; if (s.totalTimes > r) { if (s.freeCnt && s.freeCnt > n) return e.toFree && e.toFree(t, s, i), void (this._model.adShareStatus[t] = u.FREE); switch (s.type) { case p.AD: if (this.isRemoveAD && s.adTimes > o) return e.toFree && e.toFree(t, s, i), void (this._model.adShareStatus[t] = u.FREE); if (3 !== (h = c.default.Platform.getAdState(t)) && s.adTimes > o) return e.toAd && e.toAd(t, s, i, h), void (this._model.adShareStatus[t] = u.AD); if (l) return e.toShare && e.toShare(t, s, i), void (this._model.adShareStatus[t] = u.SHARE); if (0 < s.superCashTimes && s.superCashTimes > a) return ( e.toSupercash && e.toSupercash(t, s, i), void (this._model.adShareStatus[t] = u.SUPER_CASH) ); if (3 === h && s.adTimes > o) return e.toAd && e.toAd(t, s, i, h), void (this._model.adShareStatus[t] = u.AD); break; case p.SHARE: var h = c.default.Platform.getAdState(t); if (l) return e.toShare && e.toShare(t, s, i), void (this._model.adShareStatus[t] = u.SHARE); if (0 < s.adTimes && s.adTimes > o && 3 !== h) return e.toAd && e.toAd(t, s, i, h), void (this._model.adShareStatus[t] = u.AD); if (0 < s.superCashTimes && s.superCashTimes > a) return ( e.toSupercash && e.toSupercash(t, s, i), void (this._model.adShareStatus[t] = u.SUPER_CASH) ); break; case p.PAY: if (s.payTimes > r) return e.toPay && e.toPay(t, s, i), void (this._model.adShareStatus[t] = u.PAY); break; case p.SUPER_CASH: if (s.superCashTimes > i.superCashCnt) return ( e.toSupercash && e.toSupercash(t, s, i), void (this._model.adShareStatus[t] = u.SUPER_CASH) ); } } } e.toFail && e.toFail(t, s, i, 3), (this._model.adShareStatus[t] = u.NONE); } } onGetIsFree(t) { var e = this._model.getData(t); if (!e) return !1; var i = this._model.getAdShareConf(t); if (i) { var s = e.adCnt, t = e.shareCnt, e = e.freeCnt || 0; if (i.totalTimes > s + t + e && i.freeCnt && i.freeCnt > e) return !0; } return !1; } } i.ADController = f;