{ "code": "import WxApi from \"./wxsdk\";\r\nimport { Main } from \"../Main\";\r\nimport { PlayerAccount } from \"../Scripts/Network/PlayerAccount\";\r\nexport default class ADPlayer {\r\n static initAd() {\r\n if (this.isInit)\r\n return;\r\n if (!Main.OnWx)\r\n return;\r\n this.rewardedVideoAd = Laya.Browser.window.wx.createRewardedVideoAd({ adUnitId: this.videlAdUnitId });\r\n this.rewardedVideoAd.onLoad(() => {\r\n console.log('激励视频 广告加载成功');\r\n this.videoAdIsload = true;\r\n });\r\n this.rewardedVideoAd.onError(err => {\r\n console.log(\"激励视屏加载失败:\" + err);\r\n this.videoAdIsload = false;\r\n });\r\n this.bannerCreateTimes = 0;\r\n this.isInit = true;\r\n }\r\n static showVideoAd(callback) {\r\n if (Main.OnWx) {\r\n console.log(\"showVideoAd , videoAdIsload:\" + this.videoAdIsload);\r\n if (PlayerAccount.CurrentAccount.CurAccountData.share) {\r\n WxApi.shareImage(\"看视频\", null, \"看视频\");\r\n }\r\n if (PlayerAccount.CurrentAccount.CurAccountData.video == false) {\r\n return;\r\n }\r\n this.RegVideo(callback);\r\n this.rewardedVideoAd.show().catch(err => {\r\n this.rewardedVideoAd.load().then(() => {\r\n this.RegVideo(callback);\r\n this.rewardedVideoAd.show();\r\n });\r\n });\r\n }\r\n else {\r\n callback(false);\r\n }\r\n }\r\n static RegVideo(callback) {\r\n this.rewardedVideoAd.offClose();\r\n this.rewardedVideoAd.onClose(res => {\r\n console.log(\"激励视频关闭:\" + res.isEnded);\r\n console.log(callback);\r\n if (res && res.isEnded || res === undefined) {\r\n callback && callback(true);\r\n }\r\n else {\r\n callback && callback(false);\r\n }\r\n this.rewardedVideoAd.offClose();\r\n });\r\n }\r\n static showBannerAd(gap = 0, callVack = null, iswait = false) {\r\n if (!Main.OnWx)\r\n return;\r\n if (this.bannerCreateTimes >= 10000) {\r\n var hh = this.ResetBannerHight(gap);\r\n if (iswait) {\r\n this.bannerAd.hide();\r\n Laya.timer.once(PlayerAccount.CurrentAccount.CurAccountData.cheattime * 1000, this, () => {\r\n if (callVack != null) {\r\n callVack(hh);\r\n }\r\n this.bannerAd.show();\r\n });\r\n }\r\n else {\r\n if (callVack != null) {\r\n callVack(hh);\r\n }\r\n this.bannerAd.show();\r\n }\r\n }\r\n else {\r\n var idd = this.bannerAdUnitId;\r\n console.log(\"adUnitId:\" + idd);\r\n let newBanner = Laya.Browser.window.wx.createBannerAd({\r\n adUnitId: idd,\r\n style: {\r\n left: 0,\r\n top: 0,\r\n width: 460\r\n }\r\n });\r\n newBanner.onError(err => {\r\n console.log(err);\r\n if (callVack != null) {\r\n callVack(null);\r\n }\r\n this.ResetBannerHight(gap);\r\n });\r\n newBanner.onLoad(() => {\r\n this.bannerCreateTimes++;\r\n if (this.bannerAd)\r\n this.bannerAd.destroy();\r\n this.bannerAd = newBanner;\r\n var hight = this.ResetBannerHight(gap);\r\n if (iswait) {\r\n this.bannerAd.hide();\r\n Laya.timer.once(PlayerAccount.CurrentAccount.CurAccountData.cheattime * 1000, this, () => {\r\n if (callVack != null) {\r\n callVack(hight);\r\n }\r\n this.bannerAd.show();\r\n });\r\n }\r\n else {\r\n if (callVack != null) {\r\n callVack(hight);\r\n }\r\n this.bannerAd.show();\r\n }\r\n });\r\n }\r\n }\r\n static ResetBannerHight(gap) {\r\n if (this.bannerAd) {\r\n let info = Laya.Browser.window.wx.getSystemInfoSync();\r\n this.bannerAd.style.width = info.windowWidth;\r\n this.bannerAd.style.top = info.windowHeight - this.bannerAd.style.realHeight - gap;\r\n return Laya.stage.height / info.windowHeight * this.bannerAd.style.realHeight;\r\n }\r\n }\r\n static ClearBanner() {\r\n Laya.timer.clearAll(this);\r\n if (!Main.OnWx)\r\n return;\r\n if (this.bannerAd)\r\n this.bannerAd.hide();\r\n }\r\n static hiddenBannerAd() {\r\n if (!Main.OnWx)\r\n return;\r\n if (this.bannerAd)\r\n this.bannerAd.hide();\r\n }\r\n static BannerAdEnable() {\r\n if (!Main.OnWx)\r\n return;\r\n if (this.bannerAd)\r\n this.bannerAd.show();\r\n }\r\n static get CanCheat() {\r\n var cheat = PlayerAccount.CurrentAccount.CurAccountData.cheat;\r\n if (cheat == false) {\r\n console.log(\"cheat:\" + cheat);\r\n return false;\r\n }\r\n if (Main.sceneValue == \"1037\" || Main.sceneValue == \"1007\"\r\n || Main.sceneValue == \"1044\" || Main.sceneValue == \"1104\"\r\n || Main.sceneValue == \"1089\" || Main.sceneValue == \"1001\"\r\n || Main.sceneValue == \"000000\") {\r\n console.log(\"cheat:true-> \" + Main.sceneValue);\r\n return true;\r\n }\r\n else {\r\n var checkscence = PlayerAccount.CurrentAccount.CurAccountData.checkscence;\r\n if (checkscence == false) {\r\n console.log(\"cheat:true->checkscence: \" + checkscence);\r\n return true;\r\n }\r\n }\r\n console.log(\"cheat:false-> \" + Main.sceneValue);\r\n return false;\r\n }\r\n static MoveButton(btn, ShowBanner = true, complete = null, gap = 0) {\r\n if (PlayerAccount.CurrentAccount.CurAccountData.banner) {\r\n ADPlayer.hiddenBannerAd();\r\n if (ADPlayer.CanCheat == false) {\r\n btn.bottom = 250;\r\n ADPlayer.showBannerAd();\r\n }\r\n else {\r\n if (ShowBanner) {\r\n btn.bottom = 100;\r\n btn.mouseEnabled = false;\r\n ADPlayer.showBannerAd(gap, (height) => {\r\n var end = Laya.stage.height - height - btn.height;\r\n btn.y = end - 5;\r\n }, true);\r\n Laya.timer.once(PlayerAccount.CurrentAccount.CurAccountData.cheattime * 1000, this, () => {\r\n btn.mouseEnabled = true;\r\n if (complete != null) {\r\n complete();\r\n }\r\n });\r\n }\r\n else {\r\n if (complete != null) {\r\n complete();\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\nADPlayer.videlAdUnitId = \"adunit-99203ac49ea44bd0\";\r\nADPlayer.bannerAdUnitId = \"adunit-398817d584c5941d\";\r\nADPlayer.isInit = false;\r\nADPlayer.videoAdIsload = false;\r\nADPlayer.bannerCreateTimes = 0;\r\n", "references": [ "C:/Users/admin/Desktop/runner/src/WXSDK/wxsdk.ts", "C:/Users/admin/Desktop/runner/src/Main.ts", "C:/Users/admin/Desktop/runner/src/Scripts/Network/PlayerAccount.ts" ] }