GameModelComp.ts 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243
  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-11 18:13:43
  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. _changeHbCoin: number = 0;
  73. //微信币数
  74. _changeWxCoin: number = 0;
  75. /**页面类型*/
  76. _viewType: string = ""; //1翻倍 2通关 3加速 4复活
  77. /**提现必反*/
  78. _cashNum: number = 0;
  79. /** 数据层组件移除时,重置所有数据为默认值 */
  80. reset() {
  81. this.id = -1;
  82. this.protocolType = 1;
  83. this.curLevelInfo = null!;
  84. this.curLevelConfig = null!;
  85. this.costInfo = null!;
  86. }
  87. /**改变的红包币*/
  88. set changeHbCoin(value: number) {
  89. this._changeHbCoin = value;
  90. }
  91. get changeHbCoin() {
  92. return this._changeHbCoin;
  93. }
  94. set changeWxCoin(v: number) {
  95. this._changeWxCoin = v;
  96. }
  97. get changeWxCoin() {
  98. return this._changeWxCoin;
  99. }
  100. set viewType(value: string) {
  101. this._viewType = value;
  102. }
  103. get viewType() {
  104. return this._viewType;
  105. }
  106. set price(value: number) {
  107. this._price = value;
  108. }
  109. get price() {
  110. return this._price;
  111. }
  112. set isDone(value: boolean) {
  113. this._isDone = value;
  114. }
  115. get isDone() {
  116. return this._isDone;
  117. }
  118. set sign(value: string) {
  119. this._sign = value;
  120. }
  121. get sign() {
  122. return this._sign;
  123. }
  124. get handlingCharge() {
  125. return this._handlingCharge;
  126. }
  127. set handlingCharge(value: number) {
  128. this._handlingCharge = value;
  129. }
  130. set curScore(value: number) {
  131. this._curScore = value;
  132. }
  133. get curScore() {
  134. return this._curScore;
  135. }
  136. get targetScore() {
  137. return this._targetScore;
  138. }
  139. set targetScore(value: number) {
  140. this._targetScore = value;
  141. }
  142. get protocolType() {
  143. return this._protocolType;
  144. }
  145. set protocolType(value: number) {
  146. this._protocolType = value;
  147. }
  148. get curLevelInfo() {
  149. return this._curLevelInfo;
  150. }
  151. set curLevelInfo(value: CurLevelInfo) {
  152. this._curLevelInfo = value;
  153. }
  154. get curLevelConfig() {
  155. return this._curLevelConfig;
  156. }
  157. set curLevelConfig(value: CurLevelConfig) {
  158. this._curLevelConfig = value;
  159. }
  160. get costInfo() {
  161. return this._costInfo;
  162. }
  163. set costInfo(value: CostInfo) {
  164. this._costInfo = value;
  165. }
  166. get recordList() {
  167. return this._recordList;
  168. }
  169. set recordList(value: RecordInfo[]) {
  170. this.recordList = value;
  171. }
  172. get isShowAd() {
  173. return this._isShowAd;
  174. }
  175. set isShowAd(value: boolean) {
  176. this._isShowAd = value
  177. }
  178. get passViewInfo() {
  179. return this._passViewInfo;
  180. }
  181. set passViewInfo(value: PassViewInfo) {
  182. this._passViewInfo = value;
  183. }
  184. set cashNum(value: number) {
  185. this._cashNum = value;
  186. }
  187. get cashNum() {
  188. return this._cashNum;
  189. }
  190. }