bb9386fe-3dcd-4b33-992f-770b655a5013.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267
  1. "use strict";
  2. cc._RF.push(module, 'bb938b+Pc1LM5kvdwtlWlAT', 'SuccessPanel');
  3. // Script/view/successPanel/SuccessPanel.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 TipPanel_1 = require("../tipPanel/TipPanel");
  31. var TipPanelMediator_1 = require("../tipPanel/TipPanelMediator");
  32. var ATRewardedVideoJSSDK_1 = require("../../AnyThinkAds/ATRewardedVideoJSSDK");
  33. var ATAndroidJS2_1 = require("../../ATAndroidJS2");
  34. var GlobalManager_1 = require("../../GlobalManager");
  35. var ATInterstitialJSSDK_1 = require("../../AnyThinkAds/ATInterstitialJSSDK");
  36. var ATAndroidJS2_2 = require("../../ATAndroidJS2");
  37. var _a = cc._decorator, ccclass = _a.ccclass, property = _a.property;
  38. var SuccessPanel = /** @class */ (function (_super) {
  39. __extends(SuccessPanel, _super);
  40. function SuccessPanel() {
  41. var _this = _super !== null && _super.apply(this, arguments) || this;
  42. _this.passTime = 0;
  43. return _this;
  44. }
  45. SuccessPanel.prototype.onLoad = function () {
  46. console.log('zh:SuccessPanel.ts onload ');
  47. // this.initAdForPageInter(); 这里的插屏有问题,所以改为激励
  48. SDK_1.default.Instance.initAdForPage();
  49. };
  50. //add判断插屏 开屏等,需要多次准备
  51. //add判断插屏 开屏等,需要多次准备
  52. SuccessPanel.prototype.initAdForPageInter = function () {
  53. if (cc.sys.os === cc.sys.OS_ANDROID) {
  54. console.log('zh:successpanel.ts 开始准备AD .....');
  55. var deviceId = ATAndroidJS2_1.default.getDeviceUserId();
  56. var setting = {};
  57. setting[ATRewardedVideoJSSDK_1.default.userIdKey] = deviceId;
  58. //add判断插屏 开屏等
  59. var pid_inter = ATAndroidJS2_1.default.getPlacementId2(ATAndroidJS2_2.AdType.Inter);
  60. console.log("zh: pid_inter checkstatus:", ATInterstitialJSSDK_1.default.checkAdStatus(pid_inter));
  61. ATInterstitialJSSDK_1.default.loadInterstitial(pid_inter, setting);
  62. }
  63. };
  64. SuccessPanel.prototype.drawView = function () {
  65. SDK_1.default.Instance.showInterstitial();
  66. App_1.App.DataManager.MissionComplete[3]++;
  67. App_1.App.LocalStorageUtil.setJsonObj(App_1.App.LocalStorageUtil.list_missionComplete, App_1.App.DataManager.MissionComplete);
  68. this.onLoadAll();
  69. this.NextLevel();
  70. this.BackMain();
  71. this.doubleReward();
  72. };
  73. SuccessPanel.prototype.onLoadAll = function () {
  74. this.ui.getNode("labelCoin").getComponent(cc.Label).string = App_1.App.DataManager.UserCoin + "";
  75. this.ui.getNode("labelDiamond").getComponent(cc.Label).string = App_1.App.DataManager.UserDiamond + "";
  76. this.ui.getNode("labelAwardCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin + "";
  77. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin;
  78. App_1.App.DataManager.UserDiamond += 1;
  79. App_1.App.LocalStorageUtil.setNumber(App_1.App.LocalStorageUtil.lst_Coin, App_1.App.DataManager.UserCoin);
  80. App_1.App.LocalStorageUtil.setNumber(App_1.App.LocalStorageUtil.lst_UserDiamond, App_1.App.DataManager.UserDiamond);
  81. };
  82. /**
  83. * 点击游戏下一关
  84. */
  85. SuccessPanel.prototype.NextLevel = function () {
  86. var _this = this;
  87. var nextBtn = this.ui.getNode("next");
  88. nextBtn.on(cc.Node.EventType.TOUCH_END, function () {
  89. if (cc.sys.os == cc.sys.OS_ANDROID) {
  90. if (ATRewardedVideoJSSDK_1.default.hasAdReady(ATAndroidJS2_1.default.getPlacementId())) {
  91. cc.sys.localStorage.setItem('yxAdMark', 'callBack_gotoNextLevel'); //看广告用于 xx 标记
  92. GlobalManager_1.default.instance.registerMethod('callBack_gotoNextLevel', _this.callBack_gotoNextLevel.bind(_this));
  93. ATRewardedVideoJSSDK_1.default.showAd(ATAndroidJS2_1.default.getPlacementId());
  94. }
  95. else {
  96. console.log('zh:AD 没有OK');
  97. _this.callBack_gotoNextLevel();
  98. SDK_1.default.Instance.initAdForPage();
  99. }
  100. }
  101. else {
  102. _this.callBack_gotoNextLevel();
  103. }
  104. //this.showInterAd("callBack_gotoNextLevel",true, () => this.callBack_gotoNextLevel());
  105. // if(App.DataManager.CurrentIntoLevel == 15 && App.DataManager.PassProgress[App.DataManager.CurrentIntoLevel] == 3){
  106. // App.Facade.popView(TipPanelMediator, TipPanel, "恭喜你已通关!", false);
  107. // gameScene.instance.ClickBackMain();
  108. // }
  109. // else{
  110. // gameScene.instance.JumpNextLevel();
  111. // }
  112. }, this);
  113. };
  114. SuccessPanel.prototype.callBack_gotoNextLevel = function () {
  115. console.log('zh:callBack_gotoNextLevel 被触发');
  116. if (App_1.App.DataManager.CurrentIntoLevel == 15 && App_1.App.DataManager.PassProgress[App_1.App.DataManager.CurrentIntoLevel] == 3) {
  117. // App.Facade.popView(TipPanelMediator, TipPanel, "恭喜你已通关!", false);
  118. App_1.App.Facade.popView(TipPanelMediator_1.default, TipPanel_1.default, "You're a super chef!", false);
  119. gameScene_1.default.instance.ClickBackMain();
  120. }
  121. else {
  122. gameScene_1.default.instance.JumpNextLevel();
  123. }
  124. };
  125. SuccessPanel.prototype.BackMain = function () {
  126. var backMainBtn = this.ui.getNode("main");
  127. backMainBtn.on(cc.Node.EventType.TOUCH_END, function () {
  128. gameScene_1.default.instance.ClickBackMain();
  129. }, this);
  130. };
  131. /**
  132. * 点击看视频
  133. */
  134. SuccessPanel.prototype.doubleReward = function () {
  135. var _this = this;
  136. var doubleBtn = this.ui.getNode("btnVideo");
  137. doubleBtn.on(cc.Node.EventType.TOUCH_END, function () {
  138. _this.ui.getNode("jiantou").getComponent(cc.Animation).stop();
  139. SoundManager_1.SoundManager.getInstance().VideoStartStop();
  140. if (cc.sys.os == cc.sys.OS_ANDROID) {
  141. if (ATRewardedVideoJSSDK_1.default.hasAdReady(ATAndroidJS2_1.default.getPlacementId())) {
  142. cc.sys.localStorage.setItem('yxAdMark', 'callBackFor_successPanel'); //看广告用于 xx 标记
  143. GlobalManager_1.default.instance.registerMethod('callBackFor_successPanel', _this.callBackFor_successPanel.bind(_this));
  144. ATRewardedVideoJSSDK_1.default.showAd(ATAndroidJS2_1.default.getPlacementId());
  145. }
  146. else {
  147. console.log('zh:AD 没有OK');
  148. _this.callBackFor_successPanel();
  149. SDK_1.default.Instance.initAdForPage();
  150. }
  151. }
  152. else {
  153. _this.callBackFor_successPanel();
  154. }
  155. // SDK.Instance.showRewardVideo(() => {
  156. // if(this.ui.getNode("jiantou").angle >= 42){
  157. // App.DataManager.UserCoin += gameScene.instance.curLevelWinCoin * 2;
  158. // }
  159. // else if(this.ui.getNode("jiantou").angle >= -34 && this.ui.getNode("jiantou").angle < 42){
  160. // App.DataManager.UserCoin += gameScene.instance.curLevelWinCoin * 3;
  161. // }
  162. // else if(this.ui.getNode("jiantou").angle >= -69 && this.ui.getNode("jiantou").angle < -34){
  163. // App.DataManager.UserCoin += gameScene.instance.curLevelWinCoin * 4;
  164. // }
  165. // else if(this.ui.getNode("jiantou").angle < -69){
  166. // App.DataManager.UserCoin += gameScene.instance.curLevelWinCoin * 5;
  167. // }
  168. // App.LocalStorageUtil.setNumber(App.LocalStorageUtil.lst_Coin, App.DataManager.UserCoin);
  169. // SoundManager.getInstance().VideoEndOpen();
  170. // gameScene.instance.JumpNextLevel();
  171. // }, () => {
  172. // SoundManager.getInstance().VideoEndOpen();
  173. // }, () => {
  174. // SoundManager.getInstance().VideoEndOpen();
  175. // });
  176. }, this);
  177. };
  178. SuccessPanel.prototype.callBackFor_successPanel = function () {
  179. console.log('zh:callBackFor_successPanel 被触发');
  180. if (this.ui.getNode("jiantou").angle >= 42) {
  181. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin * 2;
  182. }
  183. else if (this.ui.getNode("jiantou").angle >= -34 && this.ui.getNode("jiantou").angle < 42) {
  184. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin * 3;
  185. }
  186. else if (this.ui.getNode("jiantou").angle >= -69 && this.ui.getNode("jiantou").angle < -34) {
  187. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin * 4;
  188. }
  189. else if (this.ui.getNode("jiantou").angle < -69) {
  190. App_1.App.DataManager.UserCoin += gameScene_1.default.instance.curLevelWinCoin * 5;
  191. }
  192. App_1.App.LocalStorageUtil.setNumber(App_1.App.LocalStorageUtil.lst_Coin, App_1.App.DataManager.UserCoin);
  193. SoundManager_1.SoundManager.getInstance().VideoEndOpen();
  194. gameScene_1.default.instance.JumpNextLevel();
  195. };
  196. SuccessPanel.path = function () {
  197. return "gameScene/prefabs/SuccessPanel";
  198. };
  199. SuccessPanel.prototype.update = function (dt) {
  200. this.passTime += dt;
  201. if (this.passTime > 0.1) {
  202. this.passTime -= 0.1;
  203. if (this.ui.getNode("jiantou").angle >= 42) {
  204. this.ui.getNode("labelVideoCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin * 2 + "";
  205. }
  206. else if (this.ui.getNode("jiantou").angle >= -34 && this.ui.getNode("jiantou").angle < 42) {
  207. this.ui.getNode("labelVideoCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin * 3 + "";
  208. }
  209. else if (this.ui.getNode("jiantou").angle >= -69 && this.ui.getNode("jiantou").angle < -34) {
  210. this.ui.getNode("labelVideoCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin * 4 + "";
  211. }
  212. else if (this.ui.getNode("jiantou").angle < -69) {
  213. this.ui.getNode("labelVideoCoin").getComponent(cc.Label).string = gameScene_1.default.instance.curLevelWinCoin * 5 + "";
  214. }
  215. }
  216. };
  217. /**
  218. * 显示插屏广告
  219. *
  220. * @param adMarkForClose 插屏广告关闭后调用那个方法的具体指示标识
  221. * @param checkClose 是否需要判断关闭事件,有的不需要,如果AD占用游戏时间则为true
  222. * @param callback 插屏广告关闭(加载失败\非ANDROID平台)的回调
  223. */
  224. SuccessPanel.prototype.showInterAd = function (adMarkForClose, checkClose, callback) {
  225. if (cc.sys.os === cc.sys.OS_ANDROID) {
  226. if (checkClose) {
  227. cc.sys.localStorage.setItem("adMarkForClose", adMarkForClose); //关闭后,调用哪个方法的标识
  228. }
  229. //add判断插屏 开屏等
  230. var pid_inter = ATAndroidJS2_1.default.getPlacementId2(ATAndroidJS2_2.AdType.Inter);
  231. var boo = ATInterstitialJSSDK_1.default.hasAdReady(pid_inter);
  232. if (boo) {
  233. // 暂停游戏
  234. cc.director.pause();
  235. console.log('zh:showInterAd AD OK');
  236. ATInterstitialJSSDK_1.default.showAd(pid_inter);
  237. //因为跨脚本,所以使用全局注册函数调用,后来发现切换APP,导致ad close事件失效
  238. if (!checkClose) { //如果不占用游戏时间
  239. this.safeCallback(callback);
  240. }
  241. }
  242. else {
  243. console.log('zh:showInterAd AD 没有准备好');
  244. //GlobalManager.getInstance().callMethod('initAdForPageInter');
  245. //this.initAdForPageInter();
  246. this.safeCallback(callback);
  247. }
  248. }
  249. else {
  250. this.safeCallback(callback);
  251. }
  252. };
  253. // 辅助方法:安全调用回调函数
  254. SuccessPanel.prototype.safeCallback = function (callback) {
  255. if (callback) {
  256. callback();
  257. }
  258. };
  259. SuccessPanel = __decorate([
  260. ccclass
  261. ], SuccessPanel);
  262. return SuccessPanel;
  263. }(BaseView_1.BaseView));
  264. exports.default = SuccessPanel;
  265. cc._RF.pop();