CommonUtils.js 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. var t = require;
  2. var e = module;
  3. var i = exports;
  4. Object.defineProperty(i, "__esModule", {value: !0}), (i.CommonUtils = void 0);
  5. const s = t("GameText");
  6. (i.CommonUtils = class {
  7. copyDataHandler(t) {
  8. var e;
  9. if (t instanceof Array) e = [];
  10. else {
  11. if (!(t instanceof Object)) return t;
  12. e = {};
  13. }
  14. for (var i = Object.keys(t), s = 0, o = i.length; s < o; s++) {
  15. var a = i[s];
  16. e[a] = this.copyDataHandler(t[a]);
  17. }
  18. return e;
  19. }
  20. parseArardStr(t) {
  21. let e = t.split("|"),
  22. i = {};
  23. for (let t = 0; t < e.length; t++) {
  24. var s = e[t].split("_");
  25. i[s[0]] = s[1] ? parseInt(s[1]) : 1;
  26. }
  27. return i;
  28. }
  29. getEloScore(t, e, i, s, o = 32, a = 32) {
  30. var n = 1 / (1 + Math.pow(10, (e - t) / 400)),
  31. e = 1 / (1 + Math.pow(10, (t - e) / 400));
  32. return [Math.round(o * (i - n)), Math.round(a * (s - e))];
  33. }
  34. setSpriteFrameByBundle(t, e, i, s) {
  35. const o = cc.assetManager.getBundle(t);
  36. t = o.get(e, cc.SpriteFrame);
  37. t
  38. ? (i && (i.spriteFrame = t), s && s())
  39. : o.load(e, cc.SpriteFrame, function (t, e) {
  40. t || ((i.spriteFrame = e), s && s());
  41. });
  42. }
  43. setSpriteFrame(t, i, s) {
  44. var e = cc.resources.get(t, cc.SpriteFrame);
  45. e
  46. ? (i && (i.spriteFrame = e), s && s())
  47. : cc.resources.load(t, cc.SpriteFrame, function (t, e) {
  48. t || ((i.spriteFrame = e), s && s());
  49. });
  50. }
  51. shuffle(t) {
  52. for (var e = t.length - 1; 0 <= e; e--) {
  53. var i = Math.floor(Math.random() * (e + 1)),
  54. s = t[i];
  55. (t[i] = t[e]), (t[e] = s);
  56. }
  57. return t;
  58. }
  59. postionLen(t, e) {
  60. var i = e.x - t.x,
  61. t = e.y - t.y;
  62. return i * i + t * t;
  63. }
  64. copyObject(t, e) {
  65. for (var i in t) e[i] = t[i];
  66. }
  67. getItemByKey(t, e, i) {
  68. for (var s = t.length - 1; -1 < s; --s) if (t[s][e] == i) return t[s];
  69. return null;
  70. }
  71. getIndexByKey(t, e, i) {
  72. for (var s = t.length - 1; -1 < s; --s) if (t[s][e] == i) return s;
  73. return -1;
  74. }
  75. getNumberInNormalDistribution(t, e) {
  76. return t + this.randomNormalDistribution() * e;
  77. }
  78. randomNormalDistribution() {
  79. for (
  80. var t, e = 0, i = 0;
  81. 0 == (i = (e = 2 * Math.random() - 1) * e + (t = 2 * Math.random() - 1) * t) || 1 <= i;
  82. );
  83. return e * Math.sqrt((-2 * Math.log(i)) / i);
  84. }
  85. removeItemByKey(t, e, i) {
  86. for (var s = t.length - 1; -1 < s; --s) if (t[s][e] == i) return t.splice(s, 1);
  87. return null;
  88. }
  89. removeItemByValue(t, e) {
  90. for (var i = t.length - 1; -1 < i; --i) if (t[i] == e) return t.splice(i, 1), !0;
  91. return !1;
  92. }
  93. getFormatTime(t, e = !1) {
  94. let i = "";
  95. return (
  96. (86400 <= (t = Math.floor(t / 1e3)) &&
  97. ((i += s.GameText.getText(56).format(Math.floor(t / 86400) + "")), (t %= 86400), e)) ||
  98. (3600 <= t && ((i += s.GameText.getText(57).format(Math.floor(t / 3600) + "")), (t %= 3600), e)) ||
  99. (60 <= t && ((i += s.GameText.getText(58).format(Math.floor(t / 60) + "")), (t %= 60), e)) ||
  100. (t && (i += s.GameText.getText(59).format(t))),
  101. i
  102. );
  103. }
  104. getFormatBySecond1(t = 0, e = !0) {
  105. var i = Math.floor(t / 3600),
  106. s = 0 == i ? "00" : i < 10 ? "0" + i : "" + i,
  107. o = Math.floor((t - 3600 * i) / 60),
  108. i = Math.floor((t - 3600 * i) % 60),
  109. o = 0 == o ? "00" : o < 10 ? "0" + o : "" + o,
  110. i = 0 == i ? "00" : i < 10 ? "0" + i : "" + i;
  111. return e && -1 < s.indexOf("00") ? o + ":" + i : s + ":" + o + ":" + i;
  112. }
  113. isFunction(t) {
  114. try {
  115. return "function" == typeof t;
  116. } catch (t) {
  117. return !1;
  118. }
  119. }
  120. isUndefined(t) {
  121. return void 0 === t;
  122. }
  123. isSameDay(t) {
  124. return new Date(t).Format("yyyyMMdd") == new Date(Date.now()).Format("yyyyMMdd");
  125. }
  126. isNull(t) {
  127. return !t && !this.isUndefined(t) && 0 != t;
  128. }
  129. isArray(t) {
  130. return "[object Array]" === Object.prototype.toString.call(t);
  131. }
  132. isObject(t) {
  133. return "[object Object]" === Object.prototype.toString.call(t);
  134. }
  135. isString(t) {
  136. return "string" == typeof t;
  137. }
  138. parsePos(t, e, i) {
  139. var s;
  140. for (s of e.split(i || ","))
  141. switch (s[0]) {
  142. case "l":
  143. t.left = parseInt(s.slice(1));
  144. break;
  145. case "r":
  146. t.right = parseInt(s.slice(1));
  147. break;
  148. case "t":
  149. t.top = parseInt(s.slice(1));
  150. break;
  151. case "b":
  152. t.bottom = parseInt(s.slice(1));
  153. break;
  154. case "v":
  155. t.verticalCenter = parseInt(s.slice(1));
  156. break;
  157. case "w":
  158. t.width = parseInt(s.slice(1));
  159. break;
  160. case "h":
  161. t.height = parseInt(s.slice(1));
  162. break;
  163. case "H":
  164. t.horizontalCenter = parseInt(s.slice(1));
  165. break;
  166. case "R":
  167. t.rotation = parseInt(s.slice(1));
  168. }
  169. }
  170. transPos(t) {}
  171. getPosX1(t, e, i) {
  172. return isNaN(t.left)
  173. ? isNaN(t.right)
  174. ? isNaN(t.horizontalCenter)
  175. ? t.x
  176. : (e - i) / 2 + t.horizontalCenter
  177. : e / 2 - t.right - i
  178. : t.left - e / 2;
  179. }
  180. getPosY1(t, e, i) {
  181. return isNaN(t.top)
  182. ? isNaN(t.bottom)
  183. ? isNaN(t.verticalCenter)
  184. ? t.y
  185. : (e - i) / 2 + t.verticalCenter
  186. : t.bottom - e / 2 - i
  187. : e / 2 - t.top;
  188. }
  189. sleep(e) {
  190. return new Promise(t => {
  191. cc.director.getScheduler().schedule(t, null, 0, 1, e / 1e3);
  192. });
  193. }
  194. }),
  195. (Number.prototype.limit = function (t, e) {
  196. var i = this;
  197. return null != t && null != t && (i = Math.max(i, t)), (i = null != e && null != e ? Math.min(i, e) : i);
  198. }),
  199. (Array.prototype.include = function (t) {
  200. return 0 <= this.indexOf(t);
  201. }),
  202. Object.defineProperty(Array.prototype, "include", {enumerable: !1}),
  203. Object.defineProperty(Number.prototype, "limit", {enumerable: !1}),
  204. (Array.prototype.remove = function (t) {
  205. t = this.indexOf(t);
  206. return -1 < t && (this.splice(t, 1), !0);
  207. }),
  208. (Array.prototype.last = function () {
  209. return this[this.length - 1];
  210. }),
  211. Object.defineProperty(Array.prototype, "last", {enumerable: !1}),
  212. Object.defineProperty(Array.prototype, "remove", {enumerable: !1});