GameModelComp.ts 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. /*
  2. * @Author: mojunshou 1637302775@qq.com
  3. * @Date: 2025-04-10 14:49:42
  4. * @LastEditors: mojunshou 1637302775@qq.com
  5. * @LastEditTime: 2025-04-10 18:24:31
  6. * @Description:
  7. */
  8. import { ecs } from "db://oops-framework/libs/ecs/ECS";
  9. interface CurLevelInfo {
  10. level: number;
  11. score: number;
  12. }
  13. interface CurLevelConfig {
  14. level: number; //当前关卡
  15. score: number; //当前关卡目标分数
  16. skipCount: number; //当前关卡跳过次数
  17. eliminateScope: []; //消除配置 用于展示惊喜翻倍弹窗
  18. eventType: string //消除配置
  19. }
  20. //费用配置
  21. interface CostInfo {
  22. handlingCharge: number; //处理费
  23. giftNum: number; //赠送金
  24. }
  25. interface RecordInfo {
  26. title: string,
  27. amount: number,
  28. payMethod: number,
  29. createTime: number,
  30. successTime: number,
  31. status: number
  32. }
  33. interface goodsList {
  34. propId: string,
  35. propNum: number
  36. }
  37. interface PassViewInfo {
  38. showReward: goodsList[]
  39. doubleReward: boolean
  40. }
  41. /** 数据层对象 */
  42. @ecs.register('GameModel')
  43. export class GameModelComp extends ecs.Comp {
  44. id: number = -1;
  45. // /**手续费*/
  46. _handlingCharge: number = 0;
  47. /**当前分数*/
  48. _curScore: number = 0;
  49. /**目标分数*/
  50. _targetScore: number = 0;
  51. /**协议类型 1隐私 2用户*/
  52. _protocolType: number = 1;
  53. //当前关卡信息
  54. _curLevelInfo: CurLevelInfo = null!;
  55. /**当前关卡配置*/
  56. _curLevelConfig: CurLevelConfig = null!;
  57. /**游戏费用配置*/
  58. _costInfo: CostInfo = null!;
  59. //提现记录
  60. _recordList: RecordInfo[] = [];
  61. //是否是广告时间
  62. _isShowAd: boolean = false;
  63. /**激励广告价值*/
  64. _price: number = 0;
  65. /**看完广告是否发奖励*/
  66. _isDone: boolean = false;
  67. /**通关奖励*/
  68. _passViewInfo: PassViewInfo = null!;
  69. /**视频签名*/
  70. _sign: string = "";
  71. /** 数据层组件移除时,重置所有数据为默认值 */
  72. reset() {
  73. this.id = -1;
  74. this.protocolType = 1;
  75. this.curLevelInfo = null!;
  76. this.curLevelConfig = null!;
  77. this.costInfo = null!;
  78. }
  79. set price(value: number) {
  80. this._price = value;
  81. }
  82. get price() {
  83. return this._price;
  84. }
  85. set isDone(value: boolean) {
  86. this._isDone = value;
  87. }
  88. get isDone() {
  89. return this._isDone;
  90. }
  91. set sign(value: string) {
  92. this._sign = value;
  93. }
  94. get sign() {
  95. return this._sign;
  96. }
  97. get handlingCharge() {
  98. return this._handlingCharge;
  99. }
  100. set handlingCharge(value: number) {
  101. this._handlingCharge = value;
  102. }
  103. set curScore(value: number) {
  104. this._curScore = value;
  105. }
  106. get curScore() {
  107. return this._curScore;
  108. }
  109. get targetScore() {
  110. return this._targetScore;
  111. }
  112. set targetScore(value: number) {
  113. this._targetScore = value;
  114. }
  115. get protocolType() {
  116. return this._protocolType;
  117. }
  118. set protocolType(value: number) {
  119. this._protocolType = value;
  120. }
  121. get curLevelInfo() {
  122. return this._curLevelInfo;
  123. }
  124. set curLevelInfo(value: CurLevelInfo) {
  125. this._curLevelInfo = value;
  126. }
  127. get curLevelConfig() {
  128. return this._curLevelConfig;
  129. }
  130. set curLevelConfig(value: CurLevelConfig) {
  131. this._curLevelConfig = value;
  132. }
  133. get costInfo() {
  134. return this._costInfo;
  135. }
  136. set costInfo(value: CostInfo) {
  137. this._costInfo = value;
  138. }
  139. get recordList() {
  140. return this._recordList;
  141. }
  142. set recordList(value: RecordInfo[]) {
  143. this.recordList = value;
  144. }
  145. get isShowAd() {
  146. return this._isShowAd;
  147. }
  148. set isShowAd(value: boolean) {
  149. this._isShowAd = value
  150. }
  151. get passViewInfo() {
  152. return this._passViewInfo;
  153. }
  154. set passViewInfo(value: PassViewInfo) {
  155. this._passViewInfo = value;
  156. }
  157. }