PlayerConst.ts 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. import DataMgr from "../mgr/DataMgr";
  2. import StorageMgr from "../mgr/StorageMgr";
  3. import Util from "../util/Util";
  4. import { PROPTYPE } from "./Enum";
  5. const { ccclass, property } = cc._decorator;
  6. @ccclass
  7. export default class PlayerConst extends cc.Component {
  8. //玩家状态信息---------------------------------------------------------------
  9. /**今日是否首次登陆 */
  10. public static ifFirstLoginToday: boolean = false;
  11. /**是否显示了惊喜任务 */
  12. public static ifShowSurpriseTask: boolean = false;
  13. //玩家微信信息---------------------------------------------------------------
  14. /**玩家昵称 */
  15. public static headImgUrl: string = "";
  16. public static nickName: string = "微信未授权";
  17. public static inviteCode: string = "";
  18. //玩家数据信息---------------------------------------------------------------
  19. /**玩家现金数目 */
  20. public static cashNum: number = 0;
  21. /**剩余体力恢复时间 */
  22. public static leftEnergyRecoverTime: number = null;
  23. /**锤子道具数量 */
  24. public static hanmmerPropNum: number = 0;
  25. /**变色道具数量 */
  26. public static changePropNum: number = 0;
  27. /**重设道具数量 */
  28. public static resetPropNum: number = 0;
  29. public passRedPacketCashNum: Number = 0;
  30. /**登陆天数 */
  31. public static loginDay: number = 0;
  32. //Api回传数据-------------------------------------------------------------------
  33. public static videoNum: number = 0;
  34. /**是否巨量激活 */
  35. public static ifJuliangApiApiActivie: boolean = false;
  36. /**是否巨量次留激活 */
  37. public static ifJuliangApiSencondActivie: boolean = false;
  38. //打卡红包相关数据
  39. public static clockInCashInfo: any = null;
  40. //打卡相关数据------------------------------------------------------------------
  41. /**通关红包数 */
  42. public static todayPassRedPacketNum: number = 0;
  43. /**今日目标红包数 */
  44. public static todayTargetRedPacketNum: number = 10;
  45. //平均ecpm----------------------------------------------------------------------
  46. public static average_ecpm: number = 0;
  47. //商城信息-----------------------------------------------------------------------
  48. public static adress: string = "";
  49. /**获取用户detail信息 */
  50. public static getDetailInfo(data: any) {
  51. PlayerConst.cashNum = !!data.amount ? Number(data.amount) : 0;
  52. PlayerConst.levelNum = !!data.cur_pass_no ? Number(data.cur_pass_no) : 0;
  53. PlayerConst.energyNum = !!data.strength ? data.strength : 0;
  54. PlayerConst.shopScoreNum = !!data.score_total ? data.score_total : 0;
  55. //登陆天数
  56. PlayerConst.loginDay = !!data.loginDays ? data.loginDays : 1;
  57. //给Ecpm赋值
  58. if (!!data.adShowConfig) {
  59. if (PlayerConst.ifFirstLoginToday || !PlayerConst.average_ecpm) {
  60. PlayerConst.average_ecpm = data.adShowConfig.average_ecpm;
  61. StorageMgr.Inst.setStorage(DATA_STORAGE_KEY.average_ecpm, PlayerConst.average_ecpm);
  62. mk.console.log("[HttpMgr] detail PlayerConst.average_ecpm 首日赋值", PlayerConst.average_ecpm);
  63. }
  64. mk.console.log("[HttpMgr] detail PlayerConst.average_ecpm", PlayerConst.average_ecpm);
  65. }
  66. }
  67. /** 获取特定类型的道具数量 */
  68. public static getPropNumByType(propType: PROPTYPE): number {
  69. let num: number = 0;
  70. switch (propType) {
  71. case PROPTYPE.Hammer:
  72. num = PlayerConst.hanmmerPropNum;
  73. break;
  74. case PROPTYPE.Reset:
  75. num = PlayerConst.resetPropNum;
  76. break;
  77. case PROPTYPE.Change:
  78. num = PlayerConst.changePropNum;
  79. break;
  80. default:
  81. num = 0;
  82. break;
  83. }
  84. return num;
  85. }
  86. /**检测是否是新授权用户 */
  87. public static cheeckIfNewAuthUser(registerTime: number): boolean {
  88. if (!registerTime) {
  89. return true;
  90. }
  91. let curDate = new Date();
  92. let date_registerTime = new Date(registerTime * 1000);
  93. let day_curDate = Util.parseTimestamp(curDate);
  94. let day_registerTime = Util.parseTimestamp(date_registerTime);
  95. mk.console.log("Util.parseTimestamp(day_curDate)", Util.parseTimestamp(curDate));
  96. mk.console.log("Util.parseTimestamp(day_registerTime)", Util.parseTimestamp(date_registerTime));
  97. if (day_curDate == day_registerTime) {
  98. return true;
  99. }
  100. else {
  101. return false;
  102. }
  103. }
  104. }
  105. export enum DATA_STORAGE_KEY {
  106. /**现金数目 */
  107. cashNum = "cashNum",
  108. /**商城积分数量 */
  109. shopScoreNum = "shopScoreNum",
  110. /**关卡等级 */
  111. levelNum = "levelNum",
  112. /**能量数目 */
  113. energyNum = "energyNum",
  114. /**能量变更时间 */
  115. energyChangeTime = "energyChangeTime",
  116. /**剩余的能量回复时间 */
  117. leftEnergyRecoverTime = "leftEnergyRecoverTime",
  118. /**登陆ticket */
  119. login_ticket = "login_ticket",
  120. /**uin */
  121. uin = "uin",
  122. /**session_key */
  123. session_key = "session_key",
  124. /**是否授权 */
  125. isAuth = "isAuth",
  126. /**昵称 */
  127. nickname = "nickname",
  128. /**今天通关红包数目 */
  129. todayPassRedPacketNum = "todayPassRedPacketNum",
  130. /**今日观看视频数目 */
  131. watchVideoNum = "watchVideoNum",
  132. /**今日在线时长 */
  133. onlineTime = "onlineTime",
  134. /**今日通关数目 */
  135. passNum = "passTime",
  136. /**是否巨量激活 */
  137. ifJuliangApiApiActivie = "ifJuliangApiApiActivie",
  138. /**是否巨量次留激活 */
  139. ifJuliangApiSencondActivie = "ifJuliangApiSencondActivie",
  140. /**地址 */
  141. adress = "adress",
  142. /**平均Ecpm */
  143. average_ecpm = "average_ecpm"
  144. }