85fc24f7-b72f-49ff-a6ad-28b219c8a0f9.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  1. "use strict";
  2. cc._RF.push(module, '85fc2T3ty9J/6atKLIZyKD5', 'FailPanel');
  3. // Script/view/failPanel/FailPanel.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 gameScene_1 = require("../../gameScene");
  28. var App_1 = require("../../Manager/App");
  29. var SoundManager_1 = require("../../Manager/SoundManager");
  30. var ATRewardedVideoJSSDK_1 = require("../../AnyThinkAds/ATRewardedVideoJSSDK");
  31. var ATAndroidJS2_1 = require("../../ATAndroidJS2");
  32. var GlobalManager_1 = require("../../GlobalManager");
  33. var ATInterstitialJSSDK_1 = require("../../AnyThinkAds/ATInterstitialJSSDK");
  34. var ATAndroidJS2_2 = require("../../ATAndroidJS2");
  35. var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property;
  36. var FailPanel = /** @class */ (function (_super) {
  37. __extends(FailPanel, _super);
  38. function FailPanel() {
  39. var _this = _super !== null && _super.apply(this, arguments) || this;
  40. _this.passTime = 0;
  41. return _this;
  42. }
  43. FailPanel.prototype.onLoad = function () {
  44. console.log('zh:fp.ts onload ');
  45. SDK_1.default.Instance.initAdForPage();
  46. };
  47. FailPanel.prototype.drawView = function () {
  48. SDK_1.default.Instance.showInterstitial();
  49. this.onLoadAll();
  50. this.btnReplay();
  51. this.BackMain();
  52. this.btnVideo();
  53. };
  54. FailPanel.prototype.onLoadAll = function () {
  55. this.ui.getNode("labelCoin").getComponent(cc.Label).string = App_1.App.DataManager.UserCoin + "";
  56. this.ui.getNode("labelDiamond").getComponent(cc.Label).string = App_1.App.DataManager.UserDiamond + "";
  57. this.ui.getNode("labelAwardCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin + "";
  58. this.ui.getNode("labelVideoCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin * 3 + "";
  59. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin;
  60. App_1.App.LocalStorageUtil.setNumber(App_1.App.LocalStorageUtil.lst_Coin, App_1.App.DataManager.UserCoin);
  61. };
  62. /**
  63. * 点击回到主页
  64. */
  65. FailPanel.prototype.BackMain = function () {
  66. var backMainBtn = this.ui.getNode("main");
  67. backMainBtn.on(cc.Node.EventType.TOUCH_END, function () {
  68. gameScene_1.default.instance.ClickBackMain();
  69. }, this);
  70. };
  71. FailPanel.prototype.btnReplay = function () {
  72. var _this = this;
  73. console.log('zh:btnReplay');
  74. var backMainBtn = this.ui.getNode("restart");
  75. backMainBtn.on(cc.Node.EventType.TOUCH_END, function () {
  76. if (cc.sys.os == cc.sys.OS_ANDROID) {
  77. if (ATRewardedVideoJSSDK_1.default.hasAdReady(ATAndroidJS2_1.default.getPlacementId())) {
  78. cc.sys.localStorage.setItem('yxAdMark', 'callBack_btnReplay'); //看广告用于 xx 标记
  79. GlobalManager_1.default.instance.registerMethod('callBack_btnReplay', _this.callBack_btnReplay.bind(_this));
  80. ATRewardedVideoJSSDK_1.default.showAd(ATAndroidJS2_1.default.getPlacementId());
  81. }
  82. else {
  83. console.log('zh:AD 没有OK');
  84. _this.callBack_btnReplay();
  85. SDK_1.default.Instance.initAdForPage();
  86. }
  87. }
  88. else {
  89. _this.callBack_btnReplay();
  90. }
  91. // this.showInterAd("callBack_btnReplay", true, () => this.callBack_btnReplay());
  92. // gameScene.instance.LoadLevel();
  93. // this.closeView();
  94. }, this);
  95. };
  96. FailPanel.prototype.callBack_btnReplay = function () {
  97. console.log('zh:callBack_btnReplay 被触发');
  98. gameScene_1.default.instance.LoadLevel();
  99. this.closeView();
  100. };
  101. /**
  102. * 点击游戏重新开始
  103. */
  104. FailPanel.prototype.btnVideo = function () {
  105. var _this = this;
  106. console.log('zh:抽奖-观看视频~11');
  107. var btnVideo = this.ui.getNode("btnVideo");
  108. btnVideo.active = true;
  109. btnVideo.on(cc.Node.EventType.TOUCH_END, function () {
  110. console.log('zh:抽奖-观看视频~22');
  111. SoundManager_1.SoundManager.getInstance().VideoStartStop();
  112. if (cc.sys.os == cc.sys.OS_ANDROID) {
  113. if (ATRewardedVideoJSSDK_1.default.hasAdReady(ATAndroidJS2_1.default.getPlacementId())) {
  114. cc.sys.localStorage.setItem('yxAdMark', 'callBack_for_chouJiang'); //看广告用于 xx 标记
  115. GlobalManager_1.default.instance.registerMethod('callBack_for_chouJiang', _this.callBack_for_chouJiang.bind(_this));
  116. ATRewardedVideoJSSDK_1.default.showAd(ATAndroidJS2_1.default.getPlacementId());
  117. }
  118. else {
  119. console.log('zh:AD 没有OK');
  120. _this.callBack_for_chouJiang();
  121. SDK_1.default.Instance.initAdForPage();
  122. }
  123. }
  124. else {
  125. _this.callBack_for_chouJiang();
  126. }
  127. //zh:diy 下面是原始的代码
  128. // SDK.Instance.showRewardVideo(() => {
  129. // console.log('抽奖-观看视频~3');
  130. // this.callBack_for_chouJiang();
  131. // }, () => {
  132. // console.log('抽奖-观看视频~4');
  133. // SoundManager.getInstance().VideoEndOpen();
  134. // }, () => {
  135. // console.log('抽奖-观看视频~5');
  136. // SoundManager.getInstance().VideoEndOpen();
  137. // });
  138. }, this);
  139. };
  140. FailPanel.prototype.callBack_for_chouJiang = function () {
  141. console.log('zh:抽奖被触发');
  142. if (this.ui.getNode("jiantou").angle >= 42) {
  143. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin * 2;
  144. console.log('zh:userCoin1=' + App_1.App.DataManager.UserCoin);
  145. }
  146. else if (this.ui.getNode("jiantou").angle >= -34 && this.ui.getNode("jiantou").angle < 42) {
  147. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin * 3;
  148. console.log('zh:userCoin2=' + App_1.App.DataManager.UserCoin);
  149. }
  150. else if (this.ui.getNode("jiantou").angle >= -69 && this.ui.getNode("jiantou").angle < -34) {
  151. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin * 4;
  152. console.log('zh:userCoin3=' + App_1.App.DataManager.UserCoin);
  153. }
  154. else if (this.ui.getNode("jiantou").angle < -69) {
  155. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin * 5;
  156. console.log('zh:userCoin4=' + App_1.App.DataManager.UserCoin);
  157. }
  158. console.log('zh:userCoin5=' + App_1.App.DataManager.UserCoin);
  159. App_1.App.LocalStorageUtil.setNumber(App_1.App.LocalStorageUtil.lst_Coin, App_1.App.DataManager.UserCoin);
  160. var cout2 = App_1.App.DataManager.UserCoin;
  161. // App.Facade.popView(TipPanelMediator, TipPanel, "金币:"+cout2, false);
  162. SoundManager_1.SoundManager.getInstance().VideoEndOpen();
  163. gameScene_1.default.instance.replay();
  164. };
  165. FailPanel.path = function () {
  166. return "gameScene/prefabs/FailPanel";
  167. };
  168. FailPanel.prototype.update = function (dt) {
  169. this.passTime += dt;
  170. if (this.passTime > 0.1) {
  171. this.passTime -= 0.1;
  172. if (this.ui.getNode("jiantou").angle >= 42) {
  173. this.ui.getNode("labelVideoCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin * 2 + "";
  174. }
  175. else if (this.ui.getNode("jiantou").angle >= -34 && this.ui.getNode("jiantou").angle < 42) {
  176. this.ui.getNode("labelVideoCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin * 3 + "";
  177. }
  178. else if (this.ui.getNode("jiantou").angle >= -69 && this.ui.getNode("jiantou").angle < -34) {
  179. this.ui.getNode("labelVideoCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin * 4 + "";
  180. }
  181. else if (this.ui.getNode("jiantou").angle < -69) {
  182. this.ui.getNode("labelVideoCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin * 5 + "";
  183. }
  184. }
  185. };
  186. /**
  187. * 显示插屏广告
  188. *
  189. * @param adMarkForClose 插屏广告关闭后调用那个方法的具体指示标识
  190. * @param checkClose 是否需要判断关闭事件,有的不需要,如果AD占用游戏时间则为true
  191. * @param callback 插屏广告关闭(加载失败\非ANDROID平台)的回调
  192. */
  193. FailPanel.prototype.showInterAd = function (adMarkForClose, checkClose, callback) {
  194. if (cc.sys.os === cc.sys.OS_ANDROID) {
  195. if (checkClose) {
  196. cc.sys.localStorage.setItem("adMarkForClose", adMarkForClose); //关闭后,调用哪个方法的标识
  197. }
  198. //add判断插屏 开屏等
  199. var pid_inter = ATAndroidJS2_1.default.getPlacementId2(ATAndroidJS2_2.AdType.Inter);
  200. var boo = ATInterstitialJSSDK_1.default.hasAdReady(pid_inter);
  201. if (boo) {
  202. // 暂停游戏
  203. cc.director.pause();
  204. console.log('zh:showInterAd AD OK');
  205. ATInterstitialJSSDK_1.default.showAd(pid_inter);
  206. //因为跨脚本,所以使用全局注册函数调用,后来发现切换APP,导致ad close事件失效
  207. if (!checkClose) { //如果不占用游戏时间
  208. this.safeCallback(callback);
  209. }
  210. }
  211. else {
  212. console.log('zh:showInterAd AD 没有准备好');
  213. //GlobalManager.getInstance().callMethod('initAdForPageInter');
  214. //this.initAdForPageInter();
  215. this.safeCallback(callback);
  216. }
  217. }
  218. else {
  219. this.safeCallback(callback);
  220. }
  221. };
  222. // 辅助方法:安全调用回调函数
  223. FailPanel.prototype.safeCallback = function (callback) {
  224. if (callback) {
  225. callback();
  226. }
  227. };
  228. FailPanel = __decorate([
  229. ccclass
  230. ], FailPanel);
  231. return FailPanel;
  232. }(BaseView_1.BaseView));
  233. exports.default = FailPanel;
  234. cc._RF.pop();