ADModel.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. var t = require;
  2. var e = module;
  3. var i = exports;
  4. var s =
  5. (this && this.__awaiter) ||
  6. function (t, n, r, l) {
  7. return new (r = r || Promise)(function (i, e) {
  8. function s(t) {
  9. try {
  10. a(l.next(t));
  11. } catch (t) {
  12. e(t);
  13. }
  14. }
  15. function o(t) {
  16. try {
  17. a(l.throw(t));
  18. } catch (t) {
  19. e(t);
  20. }
  21. }
  22. function a(t) {
  23. var e;
  24. t.done
  25. ? i(t.value)
  26. : ((e = t.value) instanceof r
  27. ? e
  28. : new r(function (t) {
  29. t(e);
  30. })
  31. ).then(s, o);
  32. }
  33. a((l = l.apply(t, n || [])).next());
  34. });
  35. };
  36. Object.defineProperty(i, "__esModule", {value: !0}), (i.ADModel = void 0);
  37. const n = t("App"),
  38. o = t("BaseModel"),
  39. a = (t("ControllerConst"), t("GameDataMsr")),
  40. r = t("ADController");
  41. i.ADModel = class extends o.default {
  42. constructor(t) {
  43. super(t),
  44. (this.registerItems = {}),
  45. (this.adAndShareData = null),
  46. (this.interactionAdConf = null),
  47. (this.interProbability = 0),
  48. (this.interProbabilityLevel = 0),
  49. (this.shareStaticData = []),
  50. (this.adShareStatus = {}),
  51. n.default.SaveManage.add(this, a.GameDataSaveKey.AD_AND_SHARE_DATA, !0, !0),
  52. (this.interProbability = 0),
  53. (this.interProbabilityLevel = 0);
  54. }
  55. getData(t) {
  56. let e = r.AdType[t],
  57. i = this.adAndShareData[e];
  58. return (i = i || (this.adAndShareData[e] = {adCnt: 0, shareCnt: 0, freeCnt: 0, superCashCnt: 0})), i;
  59. }
  60. reset() {
  61. (this.registerItems = {}), (this.adShareStatus = {});
  62. }
  63. getAdShareConf(t) {
  64. return n.default.ConfigManager.getConfig("AdDataManager").getData(t);
  65. }
  66. addAdNum() {
  67. this.adAndShareData.adNum++;
  68. }
  69. getShareData(t) {
  70. if (t)
  71. for (var e = 0; e < this.shareStaticData.length; e++)
  72. if (this.shareStaticData[e].key == t) return this.shareStaticData[e];
  73. let i = [];
  74. for (e = 0; e < this.shareStaticData.length; e++) i.push(this.shareStaticData[e].weight);
  75. var s = this.weight_rand(i);
  76. return this.shareStaticData[s];
  77. }
  78. weight_rand(t) {
  79. let e,
  80. i,
  81. s = 0;
  82. for (i = t.length, e = 0; e < i; e++) s += void 0 !== t[e] ? t[e] : 0;
  83. if (0 == s) return this.random(i);
  84. for (e = 0; e < i; e++) {
  85. if (Math.floor(Math.random() * s + 1) <= t[e]) return e;
  86. s -= t[e];
  87. }
  88. }
  89. random(t) {
  90. return Math.floor(Math.random() * t);
  91. }
  92. initShareStaticData() {
  93. return s(this, void 0, void 0, function* () {
  94. if (cc.sys.platform === cc.sys.WECHAT_GAME)
  95. try {
  96. var t = yield n.default.Http.requestAsync(
  97. n.default.ConfigManager.gameConf.serverInfos.interface + "/api/config/share_list",
  98. {},
  99. "GET"
  100. ),
  101. e = JSON.parse(t);
  102. 0 === e.code && (this.shareStaticData = e.data);
  103. } catch (t) {
  104. this.shareStaticData = [
  105. {
  106. id: 1,
  107. key: "s1",
  108. message: "你离亿万富翁,只差一座金矿!",
  109. image_src: "http://mine.gzqidong.cn/uploads/images/16752461461591960177.jpg",
  110. weight: 1
  111. }
  112. ];
  113. }
  114. else
  115. this.shareStaticData = [
  116. {message: "测试", image_src: "http://mine.gzqidong.cn/uploads/images/16752461461591960177.jpg"}
  117. ];
  118. this.getShareData();
  119. });
  120. }
  121. updateDayData(t, e) {
  122. let i = n.default.ConfigManager.getConfig("AdDataManager");
  123. for (var s in this.adAndShareData) {
  124. var o, a;
  125. "adNum" != s &&
  126. ((o = this.adAndShareData[s]),
  127. (a = r.AdType[s]),
  128. (a = i.getData(a)),
  129. o &&
  130. (a && a.isDayClear
  131. ? (this.adAndShareData[s] = {shareCnt: 0, adCnt: 0, freeCnt: 0, superCashCnt: 0})
  132. : (this.adAndShareData[s] = {shareCnt: 0, adCnt: 0, freeCnt: o.freeCnt, superCashCnt: 0})));
  133. }
  134. }
  135. createMemento(t) {
  136. return this.adAndShareData;
  137. }
  138. setMemento(t, e) {
  139. this.adAndShareData = t || {adNum: 0};
  140. }
  141. };