Bladeren bron

签到获得红包奖励展示

薛鸿潇 5 jaren geleden
bovenliggende
commit
4fffe3f48a

+ 22 - 13
assets/script/game/data/module/RewardData.ts

@@ -12,29 +12,38 @@ export class RewardData extends Data {
     public init_luck_style: boolean = false;
 
     /** 默认幸运红包 */
-    private _is_luck: boolean = true;
+    private _lid_type: LidType = LidType.none;
     /** 是幸运红包 不是通关红包 */
-    set is_luck(value: boolean) {
-        this._is_luck = value;
+    set lid_type(value: LidType) {
+        this._lid_type = value;
         this.init_luck_style = true;
     }
-    get is_luck() {
-        return this._is_luck;
+    get lid_type(): LidType {
+        return this._lid_type;
     }
 
     /** 奖励列表 */
-    data: Array<DataType> = [];
+    data: Array<any> = [];
     /** 
      * 标志位 
      * - 初始化提现样式
     */
     public init_cash_style: boolean = true;
+
+    /** 
+     * 盖子类型
+     * - 外部赋值 lid_type 时,使用此变量赋值
+     */
+    public type_lid: typeof LidType = LidType
 }
-type DataType = {
-    /** 奖励类型 */
-    rewardType: number,
-    /** 奖励数量 */
-    rewardNum: number,
-    /** 玩家剩余数量 */
-    rewardTotal: number
+/**
+ * 盖子类型
+ */
+enum LidType {
+    /** 无盖子 */
+    none = 0,
+    /** 幸运红包盖子 */
+    luck = 1,
+    /** 通关红包盖子 */
+    mission = 2
 }

+ 16 - 1
assets/script/game/data/module/SignData.ts

@@ -1,5 +1,5 @@
 import { Data } from "../../../mk/data/Data";
-import { GameProp, RewardState } from "../GameData";
+import { GameProp, RewardState, RewardType } from "../GameData";
 
 /**
  * @description 签到数据
@@ -19,7 +19,10 @@ export class SignData extends Data {
             });
             this.c_sign = gData.gameData.configs.SignIn;
         }
+        // 服务端数据不对
         // this.sign_last_bar = gData.gameData.gameData.signInDay;
+        this.sign_last_bar = gData.gameData.getProp(GameProp.sign_last_bar);
+        // this.sign_can = gData.gameData.getProp(GameProp.sign_can);
     }
 
     /** 标志位:是否需要刷新数据 */
@@ -124,6 +127,7 @@ export class SignData extends Data {
     public signComplete() {
         this.sign_can = 0;
         this.sign_last_bar++;
+        // 自定义状态
         let new_data = [
             {
                 key: GameProp.sign_can,
@@ -135,6 +139,17 @@ export class SignData extends Data {
             }
         ]
         gData.gameData.setProps(new_data);
+        // 奖励展示
+        let reward_data = this.c_sign[this.sign_last_bar - 1];
+        if (reward_data.rewardType === RewardType.redBag) {
+            gData.reward.lid_type = gData.reward.type_lid.none;// 无盖子类型
+            gData.reward.data = [reward_data];// 数据列表
+            mk.ui.openPanel('module/reward/reward')
+        } else if (reward_data.rewardType === RewardType.rmb || reward_data.rewardType === RewardType.pigRmb) {
+
+        }
+
+        // 获得奖励
     }
 
 }

+ 4 - 0
assets/script/game/module/module/pigBank/PigBank.ts

@@ -29,6 +29,10 @@ export default class PigBank extends cc.Component {
             gData.pigbank.init_data = false;
             this.initCashDesc();
         }
+        if (gData.pigbank.adData) {
+            cc.log('存钱罐提现', gData.pigbank.adData)
+            gData.pigbank.adData = null;
+        }
     }
 
     /** 

+ 13 - 18
assets/script/game/module/module/reward/Reward.ts

@@ -1,4 +1,5 @@
 import { AdFun } from "../../../data/AdData";
+import { RewardType } from "../../../data/GameData";
 
 const { ccclass, property } = cc._decorator;
 /**
@@ -35,15 +36,6 @@ export default class Reward extends cc.Component {
 
     onLoad() {
         this.lbl_reward_value.string = '0';
-        // 测试数据
-        gData.reward.data.push({
-            /** 奖励类型 */
-            rewardType: 1,
-            /** 奖励数量 */
-            rewardNum: 100,
-            /** 玩家剩余数量 */
-            rewardTotal: 0
-        })
     }
 
     start() {
@@ -74,10 +66,14 @@ export default class Reward extends cc.Component {
      * 初始化封面样式
      */
     private initLid() {
-        if (gData.reward.is_luck) {
-            this.node_luck.active = true;
+        if (gData.reward.lid_type === gData.reward.type_lid.none) {// 无盖子样式
+            this.node_luck.active = false;
             this.node_mission.active = false;
-        } else {
+            this.watchVideoCall();
+        } else if (gData.reward.lid_type === gData.reward.type_lid.luck) {
+            this.node_luck.active = false;
+            this.node_mission.active = true;
+        } else if (gData.reward.lid_type === gData.reward.type_lid.mission) {
             this.node_luck.active = false;
             this.node_mission.active = true;
         }
@@ -111,21 +107,20 @@ export default class Reward extends cc.Component {
      * 看广告回调:开奖
      */
     private watchVideoCall() {
-        gData.reward.data = gData.reward.adData;
         // 数据排序:多条奖励,只展示红包,把红包放在首位
-        const r_count = gData.reward.adData.length;
+        const r_count = gData.reward.data.length;
         if (r_count >= 2) {
             for (let i = 0; i < r_count; i++) {
-                if (gData.reward.adData[i].rewardType === 1) {
-                    let new_data = gData.reward.adData.splice(i, 1);
-                    gData.reward.adData.unshift(new_data);
+                if (gData.reward.data[i].rewardType === 1) {
+                    let new_data = gData.reward.data.splice(i, 1);
+                    gData.reward.data.unshift(new_data);
                     break;
                 }
             }
         }
 
         // 图标展示
-        if (gData.reward.data[0].rewardType === 1) {
+        if (gData.reward.data[0].rewardType === RewardType.redBag) {
             this.node_redBag.active = true;
             this.node_pig.active = false;
         } else {

+ 1 - 0
assets/script/game/module/module/sign/Sign.ts

@@ -26,6 +26,7 @@ export default class Sign extends cc.Component {
         // gData.sign.sign_can = gData.gameData.getProp(GameProp.sign_can);
         gData.sign.initListData();
         gData.sign.init_data = true;
+        cc.log(gData.sign.sign_last_bar)
     }
 
     /**