9408d766-6d7e-4a26-aa0e-e15464c343f5.js 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. "use strict";
  2. cc._RF.push(module, '9408ddmbX5KJqoO4VRkw0P1', 'UITrySkinPanel');
  3. // scripts/UI/UITrySkinPanel.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 (b.hasOwnProperty(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. var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
  25. function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
  26. return new (P || (P = Promise))(function (resolve, reject) {
  27. function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
  28. function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
  29. function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
  30. step((generator = generator.apply(thisArg, _arguments || [])).next());
  31. });
  32. };
  33. var __generator = (this && this.__generator) || function (thisArg, body) {
  34. var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
  35. return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
  36. function verb(n) { return function (v) { return step([n, v]); }; }
  37. function step(op) {
  38. if (f) throw new TypeError("Generator is already executing.");
  39. while (_) try {
  40. if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
  41. if (y = 0, t) op = [op[0] & 2, t.value];
  42. switch (op[0]) {
  43. case 0: case 1: t = op; break;
  44. case 4: _.label++; return { value: op[1], done: false };
  45. case 5: _.label++; y = op[1]; op = [0]; continue;
  46. case 7: op = _.ops.pop(); _.trys.pop(); continue;
  47. default:
  48. if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
  49. if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
  50. if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
  51. if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
  52. if (t[2]) _.ops.pop();
  53. _.trys.pop(); continue;
  54. }
  55. op = body.call(thisArg, _);
  56. } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
  57. if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
  58. }
  59. };
  60. Object.defineProperty(exports, "__esModule", { value: true });
  61. var Utils_1 = require("../../common-plugin/Scripts/Utils");
  62. var CocosZ_1 = require("../Framework/CocosZ");
  63. var Constant_1 = require("../Framework/Constant");
  64. var UIPage_1 = require("../Framework/UIPage");
  65. var ani_1 = require("../Game/ani");
  66. var ccclass = cc._decorator.ccclass;
  67. var UITrySkinPanel = /** @class */ (function (_super) {
  68. __extends(UITrySkinPanel, _super);
  69. function UITrySkinPanel() {
  70. var _this = _super.call(this, Constant_1.PanelName.UITrySkinPanel) || this;
  71. _this._mask = null;
  72. _this._panel = null;
  73. _this.aniArr = [];
  74. _this.btnArr = [];
  75. _this.skinArr = [];
  76. _this.isValid() && _this.onLoad();
  77. return _this;
  78. }
  79. UITrySkinPanel.prototype.onLoad = function () {
  80. this._panel = this._page.getChildByName("Panel");
  81. this._mask = this._page.getChildByName("Mask");
  82. this.aniArr[0] = this._panel.getChildByName("ani0");
  83. this.aniArr[1] = this._panel.getChildByName("ani1");
  84. this.aniArr[2] = this._panel.getChildByName("ani2");
  85. var btnNames = ["BtnVideo0", "BtnVideo1", "BtnVideo2", "BtnPass"];
  86. for (var i = 0; i < btnNames.length; i++) {
  87. var btn = cc.find(btnNames[i], this._panel);
  88. if (btn) {
  89. this.btnArr[i] = btn;
  90. btn.on(cc.Node.EventType.TOUCH_END, this._onBtnClickedHandler, this);
  91. }
  92. }
  93. };
  94. UITrySkinPanel.prototype.onOpen = function () {
  95. var _this = this;
  96. Utils_1.utils.SendEvent("页面-皮肤试用");
  97. // 暂停游戏逻辑
  98. CocosZ_1.cocosz.pauseCount++;
  99. // 未解锁的皮肤id数组
  100. var arr = CocosZ_1.cocosz.dataMgr.getRandomLockSkin();
  101. if (arr.length > 0) {
  102. var _loop_1 = function (i) {
  103. if (arr.length > 0) {
  104. var index = Math.floor(Math.random() * arr.length);
  105. var id = arr[index];
  106. arr.splice(index, 1);
  107. this_1.skinArr[i] = id;
  108. // 显示任务
  109. var aniTs = this_1.aniArr[i].getComponent(ani_1.default);
  110. aniTs.setSkinById(id);
  111. aniTs.setWeaponById(CocosZ_1.cocosz.dataMgr.CurRange);
  112. this_1.aniArr[i].opacity = 0;
  113. CocosZ_1.cocosz.scheduleOnce(function () {
  114. if (_this._page && _this.aniArr[i]) {
  115. cc.tween(_this.aniArr[i])
  116. .set({ y: 500, opacity: 255 })
  117. .to(0.4, { y: 50 }, { easing: "sineOut" })
  118. .start();
  119. }
  120. }, 0.3 * i);
  121. }
  122. else {
  123. // 皮肤不够隐藏
  124. this_1.aniArr[i].active = false;
  125. this_1.btnArr[i].active = false;
  126. }
  127. };
  128. var this_1 = this;
  129. // 随机3个皮肤
  130. for (var i = 0; i < 3; i++) {
  131. _loop_1(i);
  132. }
  133. }
  134. else {
  135. // 没有未解锁皮肤,自动隐藏
  136. CocosZ_1.cocosz.uiMgr.closePanel(Constant_1.PanelName.UITrySkinPanel);
  137. }
  138. };
  139. UITrySkinPanel.prototype.onClose = function () {
  140. CocosZ_1.cocosz.gameMgr.gameStart(CocosZ_1.cocosz.curLevel);
  141. };
  142. /**
  143. * 所有按钮点击事件
  144. * @param event
  145. * @param data
  146. */
  147. UITrySkinPanel.prototype._onBtnClickedHandler = function (event, data) {
  148. return __awaiter(this, void 0, void 0, function () {
  149. var _this = this;
  150. return __generator(this, function (_a) {
  151. switch (_a.label) {
  152. case 0:
  153. //播放按钮点击音效
  154. return [4 /*yield*/, CocosZ_1.cocosz.audioMgr.playBtnEffect().catch()];
  155. case 1:
  156. //播放按钮点击音效
  157. _a.sent();
  158. switch (event.target.name) {
  159. case "BtnVideo0":
  160. case "BtnVideo1":
  161. case "BtnVideo2": {
  162. Utils_1.utils.SendEvent("视频-弹窗角色试用-播放");
  163. CocosZ_1.cocosz.watchAD(function () {
  164. // 视频成功
  165. Utils_1.utils.SendEvent("视频-弹窗角色试用-成功");
  166. if (event.target.name == "BtnVideo0") {
  167. CocosZ_1.cocosz.gameMgr.gameCtr.curUseSkinId = _this.skinArr[0];
  168. }
  169. else if (event.target.name == "BtnVideo1") {
  170. CocosZ_1.cocosz.gameMgr.gameCtr.curUseSkinId = _this.skinArr[1];
  171. }
  172. else if (event.target.name == "BtnVideo2") {
  173. CocosZ_1.cocosz.gameMgr.gameCtr.curUseSkinId = _this.skinArr[2];
  174. }
  175. CocosZ_1.cocosz.uiMgr.closePanel(Constant_1.PanelName.UITrySkinPanel);
  176. }, function () {
  177. // 视频失败
  178. Utils_1.utils.SendEvent("视频-弹窗角色试用-失败");
  179. CocosZ_1.cocosz.uiMgr.closePanel(Constant_1.PanelName.UITrySkinPanel);
  180. });
  181. break;
  182. }
  183. case "BtnPass": {
  184. CocosZ_1.cocosz.uiMgr.closePanel(Constant_1.PanelName.UITrySkinPanel);
  185. break;
  186. }
  187. }
  188. return [2 /*return*/];
  189. }
  190. });
  191. });
  192. };
  193. UITrySkinPanel = __decorate([
  194. ccclass
  195. ], UITrySkinPanel);
  196. return UITrySkinPanel;
  197. }(UIPage_1.default));
  198. exports.default = UITrySkinPanel;
  199. cc._RF.pop();