GameModelComp.ts 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  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 15:25:01
  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. /** 数据层对象 */
  34. @ecs.register('GameModel')
  35. export class GameModelComp extends ecs.Comp {
  36. id: number = -1;
  37. // /**手续费*/
  38. _handlingCharge: number = 0;
  39. /**当前分数*/
  40. _curScore: number = 0;
  41. /**目标分数*/
  42. _targetScore: number = 0;
  43. /**协议类型 1隐私 2用户*/
  44. _protocolType: number = 1;
  45. //当前关卡信息
  46. _curLevelInfo: CurLevelInfo = null!;
  47. /**当前关卡配置*/
  48. _curLevelConfig: CurLevelConfig = null!;
  49. /**游戏费用配置*/
  50. _costInfo: CostInfo = null!;
  51. //提现记录
  52. _recordList: RecordInfo[] = [];
  53. //是否是广告时间
  54. _isShowAd: boolean = false;
  55. /** 数据层组件移除时,重置所有数据为默认值 */
  56. reset() {
  57. this.id = -1;
  58. this.protocolType = 1;
  59. this.curLevelInfo = null!;
  60. this.curLevelConfig = null!;
  61. this.costInfo = null!;
  62. }
  63. get handlingCharge() {
  64. return this._handlingCharge;
  65. }
  66. set handlingCharge(value: number) {
  67. this._handlingCharge = value;
  68. }
  69. set curScore(value: number) {
  70. this._curScore = value;
  71. }
  72. get curScore() {
  73. return this._curScore;
  74. }
  75. get targetScore() {
  76. return this._targetScore;
  77. }
  78. set targetScore(value: number) {
  79. this._targetScore = value;
  80. }
  81. get protocolType() {
  82. return this._protocolType;
  83. }
  84. set protocolType(value: number) {
  85. this._protocolType = value;
  86. }
  87. get curLevelInfo() {
  88. return this._curLevelInfo;
  89. }
  90. set curLevelInfo(value: CurLevelInfo) {
  91. this._curLevelInfo = value;
  92. }
  93. get curLevelConfig() {
  94. return this._curLevelConfig;
  95. }
  96. set curLevelConfig(value: CurLevelConfig) {
  97. this._curLevelConfig = value;
  98. }
  99. get costInfo() {
  100. return this._costInfo;
  101. }
  102. set costInfo(value: CostInfo) {
  103. this._costInfo = value;
  104. }
  105. get recordList() {
  106. return this._recordList;
  107. }
  108. set recordList(value: RecordInfo[]) {
  109. this.recordList = value;
  110. }
  111. get isShowAd() {
  112. return this._isShowAd;
  113. }
  114. set isShowAd(value: boolean) {
  115. this._isShowAd = value
  116. }
  117. }