3c95264d-4690-4645-8a3f-b6019256b2c0.js 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669
  1. "use strict";
  2. cc._RF.push(module, '3c952ZNRpBGRYo/tgGSVrLA', 'hallScene');
  3. // Script/hallScene.ts
  4. "use strict";
  5. var __extends = (this && this.__extends) || (function () {
  6. var extendStatics = function (d, b) {
  7. extendStatics = Object.setPrototypeOf ||
  8. ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
  9. function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
  10. return extendStatics(d, b);
  11. };
  12. return function (d, b) {
  13. extendStatics(d, b);
  14. function __() { this.constructor = d; }
  15. d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
  16. };
  17. })();
  18. var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
  19. var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  20. if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  21. else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  22. return c > 3 && r && Object.defineProperty(target, key, r), r;
  23. };
  24. Object.defineProperty(exports, "__esModule", { value: true });
  25. var BaseView_1 = require("../lightMVC/core/base/BaseView");
  26. var SDK_1 = require("./sdk/SDK");
  27. var hallSceneMediator_1 = require("./hallSceneMediator");
  28. var App_1 = require("./Manager/App");
  29. var SoundManager_1 = require("./Manager/SoundManager");
  30. var TimeControl_1 = require("./TimeControl");
  31. var ChooseLevelPanel_1 = require("./view/chooseLevel/ChooseLevelPanel");
  32. var ChooseLevelPanelMediator_1 = require("./view/chooseLevel/ChooseLevelPanelMediator");
  33. var ChooseSkinPanel_1 = require("./view/chooseSkin/ChooseSkinPanel");
  34. var ChooseSkinPanelMediator_1 = require("./view/chooseSkin/ChooseSkinPanelMediator");
  35. var InsufficientPanel_1 = require("./view/insufficientPanel/InsufficientPanel");
  36. var InsufficientPanelMediator_1 = require("./view/insufficientPanel/InsufficientPanelMediator");
  37. var MissionPanel_1 = require("./view/missionPanel/MissionPanel");
  38. var MissionPanelMediator_1 = require("./view/missionPanel/MissionPanelMediator");
  39. var SetNormalPanel_1 = require("./view/setNormal/SetNormalPanel");
  40. var SetNormalPanelMediator_1 = require("./view/setNormal/SetNormalPanelMediator");
  41. var ShopPanel_1 = require("./view/shopView/ShopPanel");
  42. var ShopPanelMediator_1 = require("./view/shopView/ShopPanelMediator");
  43. var TipPanel_1 = require("./view/tipPanel/TipPanel");
  44. var TipPanelMediator_1 = require("./view/tipPanel/TipPanelMediator");
  45. var AESUtil_1 = require("./AESUtil");
  46. var ATJSSDK_1 = require("./AnyThinkAds/ATJSSDK");
  47. var ATRewardedVideoJSSDK_1 = require("./AnyThinkAds/ATRewardedVideoJSSDK");
  48. var ATAndroidJS2_1 = require("./ATAndroidJS2");
  49. var GlobalManager_1 = require("./GlobalManager");
  50. var ATInterstitialJSSDK_1 = require("./AnyThinkAds/ATInterstitialJSSDK");
  51. var ATBannerJSSDK_1 = require("./AnyThinkAds/ATBannerJSSDK");
  52. var ATAndroidJS2_2 = require("./ATAndroidJS2");
  53. var Tag = 'zh:UIGame';
  54. var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property;
  55. var hallScene = /** @class */ (function (_super) {
  56. __extends(hallScene, _super);
  57. function hallScene() {
  58. var _this = _super !== null && _super.apply(this, arguments) || this;
  59. _this.startGameBtn = null;
  60. _this.setNormalBtn = null;
  61. // @property(cc.Button)
  62. // public chooseSkinBtn: cc.Button = null;
  63. _this.missionBtn = null;
  64. // @property(cc.Button)
  65. // public btnVideo: cc.Button = null;
  66. // @property(cc.Button)
  67. // public btnShop: cc.Button = null;
  68. _this.btnLeft = null;
  69. _this.btnRight = null;
  70. _this.pageView = null;
  71. _this.labelTili = null;
  72. _this.physicalTime = null;
  73. _this.labelCoin = null;
  74. _this.labelDiamond = null;
  75. _this.loadSceneName = "gameScene";
  76. _this.currientView = 0;
  77. _this.adState = false;
  78. _this.adKey = "zh_ad_type";
  79. return _this;
  80. //#endregion
  81. }
  82. hallScene_1 = hallScene;
  83. Object.defineProperty(hallScene, "instance", {
  84. get: function () {
  85. return hallScene_1._instance;
  86. },
  87. set: function (value) {
  88. hallScene_1._instance = value;
  89. },
  90. enumerable: false,
  91. configurable: true
  92. });
  93. hallScene.prototype.onLoad = function () {
  94. // cc.sys.localStorage.clear();
  95. var _this = this;
  96. hallScene_1.instance = this;
  97. this.registerMediator(hallSceneMediator_1.default, this, "主界面");
  98. SDK_1.default.Instance.showBanner();
  99. this.initAd();
  100. this.initAdForPage();
  101. //GlobalManager.getInstance().registerMethod('initAdForPageInter', this.initAdForPageInter.bind(this));
  102. this.initAdPageForBanner();
  103. setTimeout(function () {
  104. _this.showBannerAd();
  105. }, 100);
  106. this.initAdInster();
  107. };
  108. hallScene.prototype.showOrHidenBannerAd = function (boo) {
  109. var pid = ATAndroidJS2_1.default.getPlacementId2(ATAndroidJS2_2.AdType.Banner);
  110. if (boo) {
  111. ATBannerJSSDK_1.default.reShowAd(pid);
  112. }
  113. else {
  114. ATBannerJSSDK_1.default.hideAd(pid);
  115. }
  116. };
  117. hallScene.prototype.showBannerAd = function () {
  118. var pid = ATAndroidJS2_1.default.getPlacementId2(ATAndroidJS2_2.AdType.Banner);
  119. var boo = ATBannerJSSDK_1.default.hasAdReady(pid);
  120. // ATBannerJSSDK.showAdInPosition(pid, ATBannerJSSDK.kATBannerAdShowingPositionTop);
  121. ATBannerJSSDK_1.default.showAdInPosition(pid, ATBannerJSSDK_1.default.kATBannerAdShowingPositionBottom);
  122. if (boo) {
  123. console.log('zh:showBannerAd AD OK SHOW....');
  124. //ATBannerJSSDK.showAdInPosition(pid, ATBannerJSSDK.kATBannerAdShowingPositionBottom);
  125. //ATBannerJSSDK.showAdInPosition(pid, ATBannerJSSDK.kATBannerAdShowingPositionTop);
  126. }
  127. else {
  128. console.log('zh:showBannerAd AD 没有准备好');
  129. }
  130. };
  131. /**
  132. * AD播放完毕的事件处理
  133. */
  134. hallScene.prototype.handleCustomEvent = function () {
  135. console.log('zh:00收到发送的事件');
  136. //let adKey = "zh_ad_type"
  137. var yxAdMark = cc.sys.localStorage.getItem("yxAdMark");
  138. console.log('zh:onAdOverEve yxAdMarkAAAA =' + yxAdMark);
  139. var adKeyTemp = ''; //初始化一下,随便
  140. switch (yxAdMark) {
  141. case 'callBack_btnReplay': //失败了重新尝试
  142. console.log('zh:callBack_btnReplay ');
  143. GlobalManager_1.default.instance.callMethod('callBack_btnReplay');
  144. break;
  145. case 'callBack_for_chouJiang': //抽奖callBack_for_chouJiang
  146. console.log('zh:callBack_for_chouJiang ');
  147. GlobalManager_1.default.instance.callMethod('callBack_for_chouJiang');
  148. break;
  149. case 'callBackFor_successPanel': //成功的时候奖
  150. console.log('zh:callBackFor_successPanel ');
  151. GlobalManager_1.default.instance.callMethod('callBackFor_successPanel');
  152. break;
  153. case 'callBack_forGetJBei':
  154. console.log('zh:callBack_forGetJBei '); //点击了奖杯
  155. GlobalManager_1.default.instance.callMethod('callBack_forGetJBei');
  156. break;
  157. case 'callBack_gotoNextLevel':
  158. console.log('zh:callBack_gotoNextLevel '); //
  159. GlobalManager_1.default.instance.callMethod('callBack_gotoNextLevel');
  160. break;
  161. case 'callBackFor_kaoJiao':
  162. console.log('zh:callBackFor_kaoJiao '); //
  163. var yxAdMark_index = cc.sys.localStorage.getItem("yxAdMark_index");
  164. GlobalManager_1.default.instance.callMethod('callBackFor_kaoJiao', yxAdMark_index);
  165. cc.sys.localStorage.delete(yxAdMark_index);
  166. break;
  167. case 'callBack_for_tiLiAd':
  168. console.log('zh:callBack_for_tiLiAd '); //体力不足
  169. GlobalManager_1.default.instance.callMethod('callBack_for_tiLiAd');
  170. break;
  171. default:
  172. console.log('zh:未知的道具类型AD==' + yxAdMark);
  173. }
  174. cc.sys.localStorage.setItem(this.adKey, '');
  175. cc.sys.localStorage.setItem(adKeyTemp, '');
  176. console.log('zh:清理adKey ');
  177. };
  178. hallScene.prototype.initAd = function () {
  179. if (cc.sys.os != cc.sys.OS_ANDROID) {
  180. return;
  181. }
  182. //let adKey = "zh_ad_type"
  183. cc.sys.localStorage.setItem(this.adKey, "");
  184. var placementId = ATAndroidJS2_1.default.getPlacementId();
  185. var deviceId = ATAndroidJS2_1.default.getDeviceUserId();
  186. var setting = {};
  187. setting[ATRewardedVideoJSSDK_1.default.userIdKey] = deviceId;
  188. ATRewardedVideoJSSDK_1.default.loadRewardedVideo(placementId, setting);
  189. //console.log('zh:bbb222')
  190. var customPlacementId = "";
  191. if (cc.sys.os === cc.sys.OS_IOS) {
  192. customPlacementId = placementId;
  193. }
  194. else if (cc.sys.os === cc.sys.OS_ANDROID) {
  195. customPlacementId = placementId;
  196. }
  197. // 初始化SDK
  198. // ATSDK.initSDK("h6752c78a49dc1", "aad31bcaf7f7ff45ba21a8bc87bd9318a");//正式的,发布提交go0gle play
  199. // ATSDK.initSDK("h66f7c5f8028cf", "ab133deec743a4bb58930891fd75d3f83");//测试专用,可以显示广告
  200. // ATSDK.initSDK("h67122e47607cd", "a4fd9a23bdd71c2314cf41140a77abb1e");//这是打砖块的已经上架的
  201. ATJSSDK_1.default.initSDK("h67161678d3fcf", "aa0e53109399d0c3a213140e896bdac07"); //正式的整理大师
  202. // ATSDK.initSDK("h6752c78a49dc1", "aad31bcaf7f7ff45ba21a8bc87bd9318a");//货柜1 正式的,发布提交go0gle play
  203. ATJSSDK_1.default.setLogDebug(true); //zh:diy
  204. var GDPRLevel = ATJSSDK_1.default.getGDPRLevel();
  205. // 针对欧盟地区初始化时做的处理,按需求打开,不在欧盟地区发布的不用使用。
  206. ATJSSDK_1.default.getUserLocation(function (userLocation) {
  207. //如果处于欧盟地区且等级是UNKNOW时,就执行授权弹窗
  208. if (userLocation === ATJSSDK_1.default.kATUserLocationInEU) {
  209. if (ATJSSDK_1.default.getGDPRLevel() === ATJSSDK_1.default.UNKNOWN) {
  210. ATJSSDK_1.default.showGDPRAuth();
  211. }
  212. }
  213. });
  214. ATRewardedVideoJSSDK_1.default.setAdListener(this);
  215. if (cc.sys.os === cc.sys.OS_ANDROID) {
  216. setTimeout(function () {
  217. var allInfo = ATAndroidJS2_1.default.allInfo();
  218. ATJSSDK_1.default.printLog("zh:allInfo=" + allInfo);
  219. var key = "US2%*c3lv8sYkUe(!e-6g$E*RJg)dzn@";
  220. var iv = "Jn0.aWsOu$y-Dbqb";
  221. var data = { data: AESUtil_1.default.AESencrypt(allInfo, key, iv) };
  222. ATJSSDK_1.default.printLog("zh:allInfo-jm=" + JSON.stringify(data));
  223. console.log('zh:ad_allInfo', data);
  224. ATAndroidJS2_1.default.makePostRequestWithXhr(JSON.stringify(data));
  225. }, 200);
  226. }
  227. };
  228. hallScene.prototype.initAdForPage = function () {
  229. if (cc.sys.os === cc.sys.OS_ANDROID) {
  230. var deviceId = ATAndroidJS2_1.default.getDeviceUserId();
  231. console.log("zh:checkstatus:", ATRewardedVideoJSSDK_1.default.checkAdStatus(ATAndroidJS2_1.default.getPlacementId()));
  232. var setting = {};
  233. setting[ATRewardedVideoJSSDK_1.default.userIdKey] = deviceId;
  234. ATRewardedVideoJSSDK_1.default.loadRewardedVideo(ATAndroidJS2_1.default.getPlacementId(), setting);
  235. }
  236. };
  237. hallScene.prototype.start = function () {
  238. this.startGameBtn.node.on(cc.Node.EventType.TOUCH_END, this.ClickStartGame, this);
  239. this.setNormalBtn.node.on(cc.Node.EventType.TOUCH_END, this.ClickSetNormal, this);
  240. this.btnLeft.node.on(cc.Node.EventType.TOUCH_END, this.ClickLeft, this);
  241. this.btnRight.node.on(cc.Node.EventType.TOUCH_END, this.ClickRight, this);
  242. // this.btnVideo.node.on(cc.Node.EventType.TOUCH_END, this.ClickAddTili, this);
  243. this.missionBtn.node.on(cc.Node.EventType.TOUCH_END, this.ClickOpenMission, this);
  244. // this.chooseSkinBtn.node.on(cc.Node.EventType.TOUCH_END, this.ClickChooseSkin, this);
  245. // this.btnShop.node.on(cc.Node.EventType.TOUCH_END, this.ClickShop, this);
  246. // console.log('----------', TimeControl.instance.currentTili);
  247. // App.DataManager.TimeCountJudge();//全局倒计时判断
  248. // if (App.DataManager.TimeFlag) {
  249. // let data = { "isShow": true, 'timeStr': App.DataManager.TimeChange(TimeControl.instance.currentTimeCount) };
  250. // this.TiliCountShow(data);
  251. // }
  252. this.ShowPhysicalValue();
  253. this.ShowUserCoinValue();
  254. this.ShowUserDiamondValue();
  255. App_1.App.SoundManager.playBGM(SoundManager_1.SoundManager.hallBgm[0]);
  256. };
  257. hallScene.prototype.ClickOpenMission = function () {
  258. // this.showInterAd("callBackFor_ClickOpenMission",false, () => this.callBackFor_ClickOpenMission());
  259. App_1.App.Facade.popView(MissionPanelMediator_1.default, MissionPanel_1.default, "打开任务界面", false);
  260. };
  261. hallScene.prototype.callBackFor_ClickOpenMission = function () {
  262. App_1.App.Facade.popView(MissionPanelMediator_1.default, MissionPanel_1.default, "打开任务界面", false);
  263. };
  264. /**
  265. * 体力显示设置
  266. */
  267. hallScene.prototype.ShowPhysicalValue = function () {
  268. console.log('############', TimeControl_1.default.instance.currentTili);
  269. if (hallScene_1.instance.labelTili) {
  270. hallScene_1.instance.labelTili.string = TimeControl_1.default.instance.currentTili + "/" + TimeControl_1.default.instance.tiliMax;
  271. }
  272. };
  273. // 显示玩家金币
  274. hallScene.prototype.ShowUserCoinValue = function () {
  275. if (hallScene_1.instance.labelCoin) {
  276. hallScene_1.instance.labelCoin.string = App_1.App.DataManager.UserCoin.toString();
  277. }
  278. };
  279. // 钻石
  280. hallScene.prototype.ShowUserDiamondValue = function () {
  281. if (hallScene_1.instance.labelDiamond) {
  282. hallScene_1.instance.labelDiamond.string = App_1.App.DataManager.UserDiamond.toString();
  283. }
  284. };
  285. /**
  286. * 体力倒计时显示设置
  287. */
  288. hallScene.prototype.TiliCountShow = function (data) {
  289. if (!this.physicalTime)
  290. return;
  291. this.physicalTime.node.active = data.isShow;
  292. if (data.timeStr)
  293. this.physicalTime.string = data.timeStr;
  294. };
  295. /**
  296. * 开始游戏
  297. */
  298. hallScene.prototype.StartGame_111 = function (intoLevel) {
  299. var _this = this;
  300. console.log("aaa-大是大非-------intoLevel----------", intoLevel);
  301. App_1.App.DataManager.UpdateTili(TimeControl_1.default.instance.consumeTili, function (success) {
  302. App_1.App.DataManager.CurrentIntoLevel = intoLevel;
  303. App_1.App.DataManager.PlayLevel = App_1.App.DataManager.CurrentIntoLevel;
  304. App_1.App.LocalStorageUtil.setNumber(App_1.App.LocalStorageUtil.lst_playLevel, App_1.App.DataManager.PlayLevel);
  305. if (success)
  306. App_1.App.Facade.runBundleScene("gameScene", _this.loadSceneName);
  307. else
  308. App_1.App.Facade.popView(InsufficientPanelMediator_1.default, InsufficientPanel_1.default, "1体力不足", false);
  309. });
  310. };
  311. /**
  312. * 开始游戏
  313. */
  314. hallScene.prototype.StartGame = function (intoLevel) {
  315. var _this = this;
  316. console.log("aaa-大是大非-------intoLevel----------", intoLevel);
  317. App_1.App.DataManager.UpdateTili(TimeControl_1.default.instance.consumeTili, function (success) {
  318. // 更新当前进入的关卡和播放关卡
  319. App_1.App.DataManager.CurrentIntoLevel = intoLevel;
  320. App_1.App.DataManager.PlayLevel = App_1.App.DataManager.CurrentIntoLevel;
  321. // 保存当前播放关卡到本地存储
  322. App_1.App.LocalStorageUtil.setNumber(App_1.App.LocalStorageUtil.lst_playLevel, App_1.App.DataManager.PlayLevel);
  323. // 根据体力更新结果跳转场景或提示
  324. if (success) {
  325. console.log("2");
  326. App_1.App.Facade.runBundleScene("gameScene", _this.loadSceneName);
  327. }
  328. else {
  329. console.log("1");
  330. App_1.App.Facade.popView(InsufficientPanelMediator_1.default, InsufficientPanel_1.default, "体力不足", false);
  331. }
  332. });
  333. };
  334. /**
  335. * 点击开始游戏按钮直接开始
  336. */
  337. hallScene.prototype.ClickStartGame = function () {
  338. if (this.pageView.getCurrentPageIndex() == 1) {
  339. App_1.App.Facade.popView(TipPanelMediator_1.default, TipPanel_1.default, "coming soon!", false);
  340. }
  341. else {
  342. App_1.App.Facade.popView(ChooseLevelPanelMediator_1.default, ChooseLevelPanel_1.default, "关卡选择", false);
  343. }
  344. };
  345. /**
  346. * 点击观看视频加体力
  347. */
  348. hallScene.prototype.ClickAddTili = function () {
  349. var _this = this;
  350. console.log('点击观看视频加体力~');
  351. SoundManager_1.SoundManager.getInstance().VideoStartStop();
  352. SDK_1.default.Instance.showRewardVideo(function () {
  353. TimeControl_1.default.instance.currentTili = TimeControl_1.default.instance.tiliMax;
  354. _this.ShowPhysicalValue();
  355. App_1.App.LocalStorageUtil.setNumber(App_1.App.LocalStorageUtil.lst_Tili, TimeControl_1.default.instance.currentTili);
  356. SoundManager_1.SoundManager.getInstance().VideoEndOpen();
  357. }, function () {
  358. SoundManager_1.SoundManager.getInstance().VideoEndOpen();
  359. }, function () {
  360. SoundManager_1.SoundManager.getInstance().VideoEndOpen();
  361. });
  362. };
  363. // 商城
  364. hallScene.prototype.ClickShop = function () {
  365. App_1.App.Facade.popView(ShopPanelMediator_1.default, ShopPanel_1.default, "商城", false);
  366. };
  367. /**
  368. * 打开关卡选择界面
  369. */
  370. hallScene.prototype.ClickChooseLevel = function () {
  371. App_1.App.Facade.popView(ChooseLevelPanelMediator_1.default, ChooseLevelPanel_1.default, "关卡选择", true);
  372. App_1.App.Facade.popView(TipPanelMediator_1.default, TipPanel_1.default, "aasdasdf", false);
  373. };
  374. /**
  375. * 打开选择皮肤界面
  376. */
  377. hallScene.prototype.ClickChooseSkin = function () {
  378. App_1.App.Facade.popView(ChooseSkinPanelMediator_1.default, ChooseSkinPanel_1.default, "皮肤选择", false);
  379. };
  380. /**
  381. * 打开设置界面
  382. */
  383. hallScene.prototype.ClickSetNormal = function () {
  384. App_1.App.Facade.popView(SetNormalPanelMediator_1.default, SetNormalPanel_1.default, "设置", false);
  385. };
  386. hallScene.prototype.ClickLeft = function () {
  387. this.currientView = this.pageView.getCurrentPageIndex() == 0 ? 1 : 0;
  388. this.pageView.scrollToPage(this.currientView, 0.5);
  389. };
  390. hallScene.prototype.ClickRight = function () {
  391. this.currientView = this.pageView.getCurrentPageIndex() == 0 ? 1 : 0;
  392. this.pageView.scrollToPage(this.currientView, 0.5);
  393. };
  394. hallScene.prototype.onDisable = function () {
  395. this.startGameBtn.node.off(cc.Node.EventType.TOUCH_END, this.ClickStartGame, this);
  396. this.setNormalBtn.node.off(cc.Node.EventType.TOUCH_END, this.ClickSetNormal, this);
  397. this.btnLeft.node.off(cc.Node.EventType.TOUCH_END, this.ClickLeft, this);
  398. this.btnRight.node.off(cc.Node.EventType.TOUCH_END, this.ClickRight, this);
  399. this.missionBtn.node.off(cc.Node.EventType.TOUCH_END, this.ClickOpenMission, this);
  400. // this.btnVideo.node.off(cc.Node.EventType.TOUCH_END, this.ClickAddTili, this);
  401. // this.btnShop.node.off(cc.Node.EventType.TOUCH_END, this.ClickShop, this);
  402. // this.chooseSkinBtn.node.off(cc.Node.EventType.TOUCH_END, this.ClickChooseSkin, this);
  403. };
  404. // update (dt) {}
  405. hallScene.prototype.onRewardedVideoAdLoaded = function (placementId) {
  406. ATJSSDK_1.default.printLog("zh:AnyThinkRewardedVideoDemo::onRewardedVideoAdLoaded(" + placementId + ")");
  407. };
  408. hallScene.prototype.onRewardedVideoAdFailed = function (placementId, errorInfo) {
  409. ATJSSDK_1.default.printLog("zh:AnyThinkRewardedVideoDemo::onRewardedVideoAdFailed(" + placementId + ", " + errorInfo + ")");
  410. };
  411. hallScene.prototype.onRewardedVideoAdPlayStart = function (placementId, callbackInfo) {
  412. ATJSSDK_1.default.printLog("zh:AnyThinkRewardedVideoDemo::onRewardedVideoAdPlayStart(" + placementId + ", " + callbackInfo + ")");
  413. var deviceId = ATAndroidJS2_1.default.getDeviceUserId();
  414. var setting = {};
  415. setting[ATRewardedVideoJSSDK_1.default.userIdKey] = deviceId;
  416. ATRewardedVideoJSSDK_1.default.loadRewardedVideo(ATAndroidJS2_1.default.getPlacementId(), setting);
  417. };
  418. hallScene.prototype.onRewardedVideoAdPlayEnd = function (placementId, callbackInfo) {
  419. ATJSSDK_1.default.printLog("zh:AnyThinkRewardedVideoDemo::onRewardedVideoAdPlayEnd(" + placementId + ", " + callbackInfo + ")");
  420. console.log('zh: ad PlayEnd');
  421. //this.node.emit("handleCustomEvent");
  422. };
  423. hallScene.prototype.onRewardedVideoAdPlayFailed = function (placementId, errorInfo, callbackInfo) {
  424. ATJSSDK_1.default.printLog("AnyThinkRewardedVideoDemo::onRewardedVideoAdPlayFailed(" + placementId + ", " + errorInfo + ", " + callbackInfo + ")");
  425. };
  426. hallScene.prototype.onRewardedVideoAdClosed = function (placementId, callbackInfo) {
  427. ATJSSDK_1.default.printLog("zh:AnyThinkRewardedVideoDemo::AdClosed(" + placementId + ", " + callbackInfo + ")");
  428. if (this.adState == true) {
  429. this.adState = false;
  430. console.log('zh: ad奖励OK,开始处理奖励');
  431. this.handleCustomEvent();
  432. }
  433. else {
  434. console.log('zh: ad奖励标识 NO OK ');
  435. }
  436. };
  437. hallScene.prototype.onRewardedVideoAdPlayClicked = function (placementId, callbackInfo) {
  438. ATJSSDK_1.default.printLog("zh:AnyThinkRewardedVideoDemo::onRewardedVideoAdPlayClicked(" + placementId + ", " + callbackInfo + ")");
  439. };
  440. hallScene.prototype.onReward = function (placementId, callbackInfo) {
  441. ATJSSDK_1.default.printLog("zh:AnyThinkRewardedVideoDemo::onReward(" + placementId + ", " + callbackInfo + ")");
  442. console.log('zh:onReward AD奖励标志OK');
  443. this.adState = true;
  444. };
  445. //#region 插屏广告
  446. /**
  447. * 显示插屏广告
  448. *
  449. * @param adMarkForClose 插屏广告关闭后调用那个方法的具体指示标识
  450. * @param checkClose 是否需要判断关闭事件,有的不需要,如果AD占用游戏时间则为true
  451. * @param callback 插屏广告关闭(加载失败\非ANDROID平台)的回调
  452. */
  453. hallScene.prototype.showInterAd = function (adMarkForClose, checkClose, callback) {
  454. if (cc.sys.os === cc.sys.OS_ANDROID) {
  455. cc.sys.localStorage.setItem("adMarkForClose", adMarkForClose); //关闭后,调用哪个方法的标识
  456. //add判断插屏 开屏等
  457. var pid_inter = ATAndroidJS2_1.default.getPlacementId2(ATAndroidJS2_2.AdType.Inter);
  458. var boo = ATInterstitialJSSDK_1.default.hasAdReady(pid_inter);
  459. if (boo) {
  460. // 暂停游戏
  461. cc.director.pause();
  462. console.log('zh:showInterAd AD OK');
  463. ATInterstitialJSSDK_1.default.showAd(pid_inter);
  464. //因为跨脚本,所以使用全局注册函数调用,后来发现切换APP,导致ad close事件失效
  465. if (!checkClose) { //如果不占用游戏时间
  466. callback();
  467. }
  468. }
  469. else {
  470. console.log('zh:showInterAd AD 没有准备好');
  471. //GlobalManager.getInstance().callMethod('initAdForPageInter');
  472. this.initAdForPageInter();
  473. callback();
  474. }
  475. }
  476. else {
  477. callback();
  478. }
  479. };
  480. //add判断插屏 开屏等,需要多次准备
  481. //add判断插屏 开屏等,需要多次准备
  482. hallScene.prototype.initAdForPageInter = function () {
  483. if (cc.sys.os === cc.sys.OS_ANDROID) {
  484. console.log('zh:skillBox.ts 开始准备AD .....');
  485. var deviceId = ATAndroidJS2_1.default.getDeviceUserId();
  486. var setting = {};
  487. setting[ATRewardedVideoJSSDK_1.default.userIdKey] = deviceId;
  488. //add判断插屏 开屏等
  489. var pid_inter = ATAndroidJS2_1.default.getPlacementId2(ATAndroidJS2_2.AdType.Inter);
  490. console.log("zh: pid_inter checkstatus:", ATInterstitialJSSDK_1.default.checkAdStatus(pid_inter));
  491. ATInterstitialJSSDK_1.default.loadInterstitial(pid_inter, setting);
  492. }
  493. };
  494. hallScene.prototype.initAdPageForBanner = function () {
  495. //v5.6.8新增
  496. var setting = {};
  497. var deviceId = ATAndroidJS2_1.default.getDeviceUserId();
  498. setting[ATRewardedVideoJSSDK_1.default.userIdKey] = deviceId;
  499. // let fsw =screen.windowSize.width;
  500. // let fsw = cc.view.getFrameSize().width
  501. var fsw = cc.view.getFrameSize().width;
  502. setting[ATBannerJSSDK_1.default.kATBannerAdLoadingExtraBannerAdSizeStruct] = ATBannerJSSDK_1.default.createLoadAdSize(fsw, 150);
  503. //只针对Admob的自适应banner
  504. setting[ATBannerJSSDK_1.default.kATBannerAdAdaptiveWidth] = fsw;
  505. setting[ATBannerJSSDK_1.default.kATBannerAdAdaptiveOrientation] = ATBannerJSSDK_1.default.kATBannerAdAdaptiveOrientationCurrent;
  506. // setting[ATBannerJSSDK.kATBannerAdAdaptiveOrientation] = ATBannerJSSDK.kATBannerAdAdaptiveOrientationPortrait;
  507. // setting[ATBannerJSSDK.kATBannerAdAdaptiveOrientation] = ATBannerJSSDK.kATBannerAdAdaptiveOrientationLandscape;
  508. var pid = ATAndroidJS2_1.default.getPlacementId2(ATAndroidJS2_2.AdType.Banner);
  509. ATBannerJSSDK_1.default.loadBanner(pid, setting);
  510. var bannerListener = {
  511. //广告加载成功
  512. onBannerAdLoaded: function (placementId) {
  513. ATJSSDK_1.default.printLog("AnyThinkBannerDemo::onBannerAdLoaded(" + placementId + ")");
  514. },
  515. //广告加载失败
  516. onBannerAdLoadFail: function (placementId, errorInfo) {
  517. ATJSSDK_1.default.printLog("AnyThinkBannerDemo::onBannerAdLoadFail(" + placementId + ", " + errorInfo + ")");
  518. this.initAdPageForBanner();
  519. },
  520. //广告展示成功
  521. onBannerAdShow: function (placementId, callbackInfo) {
  522. ATJSSDK_1.default.printLog("AnyThinkBannerDemo::onBannerAdShow(" + placementId + ", " + callbackInfo + ")");
  523. },
  524. //广告被点击
  525. onBannerAdClick: function (placementId, callbackInfo) {
  526. ATJSSDK_1.default.printLog("AnyThinkBannerDemo::onBannerAdClick(" + placementId + ", " + callbackInfo + ")");
  527. },
  528. //广告自动刷新成功
  529. onBannerAdAutoRefresh: function (placementId, callbackInfo) {
  530. ATJSSDK_1.default.printLog("AnyThinkBannerDemo::onBannerAdAutoRefresh(" + placementId + ", " + callbackInfo + ")");
  531. },
  532. //广告自动刷新失败
  533. onBannerAdAutoRefreshFail: function (placementId, errorInfo) {
  534. ATJSSDK_1.default.printLog("AnyThinkBannerDemo::onBannerAdAutoRefreshFail(" + placementId + ", " + errorInfo + ")");
  535. },
  536. //广告关闭按钮被点击
  537. onBannerAdCloseButtonTapped: function (placementId, callbackInfo) {
  538. ATJSSDK_1.default.printLog("AnyThinkBannerDemo::onBannerAdCloseButtonTapped(" + placementId + ", " + callbackInfo + ")");
  539. this.initAdPageForBanner();
  540. }
  541. };
  542. ATBannerJSSDK_1.default.setAdListener(bannerListener);
  543. console.log("zh:initAdPageForBanner listener over ..... ");
  544. };
  545. hallScene.prototype.initAdInster = function () {
  546. var adKey = "adMarkForClose";
  547. cc.sys.localStorage.setItem(adKey, "");
  548. var deviceId = ATAndroidJS2_1.default.getDeviceUserId();
  549. var setting = {};
  550. setting[ATRewardedVideoJSSDK_1.default.userIdKey] = deviceId;
  551. var pid = ATAndroidJS2_1.default.getPlacementId2(ATAndroidJS2_2.AdType.Inter);
  552. var placementId = pid;
  553. setting[ATInterstitialJSSDK_1.default.UseRewardedVideoAsInterstitial] = false; //UseRewardedVideoAsInterstitial
  554. //setting[ATInterstitialJSSDK.UseRewardedVideoAsInterstitial] = true;
  555. ATInterstitialJSSDK_1.default.loadInterstitial(pid, setting);
  556. //v5.6.8以下
  557. //ATInterstitialSDK.loadInterstitial(pid);
  558. var that = this;
  559. var interstitialListener = {
  560. //广告加载成功
  561. onInterstitialAdLoaded: function (placementId) {
  562. ATJSSDK_1.default.printLog("AnyThinkInterstitialDemo::onInterstitialAdLoaded(" + placementId + ")");
  563. },
  564. //广告加载失败
  565. onInterstitialAdLoadFail: function (placementId, errorInfo) {
  566. ATJSSDK_1.default.printLog("AnyThinkInterstitialDemo::onInterstitialAdLoadFail(" + placementId + ", " + errorInfo + ")");
  567. },
  568. //广告展示成功
  569. onInterstitialAdShow: function (placementId, callbackInfo) {
  570. ATJSSDK_1.default.printLog("AnyThinkInterstitialDemo::onInterstitialAdShow(" + placementId + ", " + callbackInfo + ")");
  571. setTimeout(function () {
  572. that.initAdForPageInter();
  573. }, 500);
  574. },
  575. //广告视频开始播放,部分平台有此回调
  576. onInterstitialAdStartPlayingVideo: function (placementId, callbackInfo) {
  577. ATJSSDK_1.default.printLog("AnyThinkInterstitialDemo::onInterstitialAdStartPlayingVideo(" + placementId + ", " + callbackInfo + ")");
  578. },
  579. //广告视频播放结束,部分广告平台有此回调
  580. onInterstitialAdEndPlayingVideo: function (placementId, callbackInfo) {
  581. ATJSSDK_1.default.printLog("AnyThinkInterstitialDemo::onInterstitialAdEndPlayingVideo(" + placementId + ", " + callbackInfo + ")");
  582. },
  583. //广告视频播放失败,部分广告平台有此回调
  584. onInterstitialAdFailedToPlayVideo: function (placementId, errorInfo) {
  585. ATJSSDK_1.default.printLog("AnyThinkInterstitialDemo::onInterstitialAdFailedToPlayVideo(" + placementId + ", " + errorInfo + ")");
  586. },
  587. //广告展示失败
  588. onInterstitialAdFailedToShow: function (placementId) {
  589. ATJSSDK_1.default.printLog("AnyThinkInterstitialDemo::onInterstitialAdFailedToShow(" + placementId + ")");
  590. },
  591. //广告被关闭
  592. onInterstitialAdClose: function (placementId, callbackInfo) {
  593. ATJSSDK_1.default.printLog("AnyThinkInterstitialDemo::onInterstitialAdClose(" + placementId + ", " + callbackInfo + ")");
  594. //因为跨脚本,所以使用全局注册函数调用,后来发现切换APP,导致ad close事件失效
  595. that.handleCustomEventForInter();
  596. },
  597. //广告被点击
  598. onInterstitialAdClick: function (placementId, callbackInfo) {
  599. ATJSSDK_1.default.printLog("AnyThinkInterstitialDemo::onInterstitialAdClick(" + placementId + ", " + callbackInfo + ")");
  600. }
  601. };
  602. ATInterstitialJSSDK_1.default.setAdListener(interstitialListener); //插屏广告
  603. };
  604. /**
  605. * AD播放完毕的事件处理,插屏处理
  606. */
  607. hallScene.prototype.handleCustomEventForInter = function () {
  608. var that = this;
  609. console.log('zh:00收到发送的事件handleCustomEventForInter');
  610. var mark = cc.sys.localStorage.getItem("adMarkForClose");
  611. console.log('zh:handleCustomEventForInter mark =' + mark);
  612. switch (mark) {
  613. case 'callBack_gotoNextLevel': //
  614. console.log('zh:点击了点击了超市');
  615. // 调用A页面的方法
  616. // GlobalManager.instance.callMethod('startGameForFailAD', 'value1', 'value2');
  617. GlobalManager_1.default.instance.callMethod('callBack_gotoNextLevel');
  618. break;
  619. case 'xxxxxx2222': //开始游戏
  620. //发送事件。。。。todo: 重新开始游戏
  621. //this.node.emit('env_playAdEnd', 'Hello,你好');
  622. // 调用A页面的方法
  623. // GlobalManager.instance.callMethod('startGameForFailAD', 'value1', 'value2');
  624. // GlobalManager.instance.callMethod('startGameForFailAD');
  625. break;
  626. default:
  627. console.log('zh:未知的inster类型AD' + mark);
  628. }
  629. };
  630. var hallScene_1;
  631. __decorate([
  632. property(cc.Button)
  633. ], hallScene.prototype, "startGameBtn", void 0);
  634. __decorate([
  635. property(cc.Button)
  636. ], hallScene.prototype, "setNormalBtn", void 0);
  637. __decorate([
  638. property(cc.Button)
  639. ], hallScene.prototype, "missionBtn", void 0);
  640. __decorate([
  641. property(cc.Button)
  642. ], hallScene.prototype, "btnLeft", void 0);
  643. __decorate([
  644. property(cc.Button)
  645. ], hallScene.prototype, "btnRight", void 0);
  646. __decorate([
  647. property(cc.PageView)
  648. ], hallScene.prototype, "pageView", void 0);
  649. __decorate([
  650. property(cc.Label)
  651. ], hallScene.prototype, "labelTili", void 0);
  652. __decorate([
  653. property(cc.Label)
  654. ], hallScene.prototype, "physicalTime", void 0);
  655. __decorate([
  656. property(cc.Label)
  657. ], hallScene.prototype, "labelCoin", void 0);
  658. __decorate([
  659. property(cc.Label)
  660. ], hallScene.prototype, "labelDiamond", void 0);
  661. hallScene = hallScene_1 = __decorate([
  662. ccclass
  663. ], hallScene);
  664. return hallScene;
  665. }(BaseView_1.BaseView));
  666. exports.default = hallScene;
  667. cc._RF.pop();