Sfoglia il codice sorgente

自动弹存钱罐、签到界面

薛鸿潇 5 anni fa
parent
commit
0f2c8dea39

+ 3 - 0
assets/script/game/data/GameData.ts

@@ -176,6 +176,7 @@ export class GameData {
     public resetProps() {
         let arr = [];
         arr.push({ key: GameProp.sign_can, value: 1 });
+        arr.push({ key: GameProp.isAutoOpenPanel, value: 1 });
 
         this.setProps(arr);
     }
@@ -196,6 +197,8 @@ export enum GameProp {
     newPlayer = 1,
     /** 当前新手引导步骤 */
     guideID = 2,
+    /** 需要自动弹界面 */
+    isAutoOpenPanel = 3,
 
     /** ------------------ 游戏核心数据 --------------------------- */
     /** 关卡数 */

+ 15 - 0
assets/script/game/game/Game.ts

@@ -49,6 +49,7 @@ export default class Game extends cc.Component {
         this.initBtns();
         this.initQiPaos();
         this.initInfo();
+        this.autoOpenPanel();
 
         // if(gData.gameData.isNewPlayer()){
         //     this.initGuide();
@@ -117,6 +118,20 @@ export default class Game extends cc.Component {
         this.img_head.spriteFrame = new cc.SpriteFrame(result);
     }
 
+    /**
+     * 自动打开面板
+     * - isAutoOpenPanel 1自动开 2不自动开 其他不处理
+     */
+    private autoOpenPanel() {
+        const isAutoOpenPanel = gData.gameData.getProp(GameProp.isAutoOpenPanel);
+        if (isAutoOpenPanel == 1) {
+            mk.ui.openPanel('module/pigBank/pigBank');
+        } else if (isAutoOpenPanel != 2) {
+            // 未定义,给初始值
+            gData.gameData.setProp(GameProp.isAutoOpenPanel, 1)
+        }
+    }
+
     //测试道具获取效果
     private testFly() {
         mk.fly.PlayCoinAnim(1, 20, cc.v2(0, -300), cc.v2(0, 0));

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

@@ -1,4 +1,5 @@
 import JsbSystem from "../../../mk/system/JsbSystem";
+import { GameProp } from "../../data/GameData";
 
 const { ccclass, property } = cc._decorator;
 /**
@@ -109,4 +110,12 @@ export default class PigBank extends cc.Component {
     onClickClose() {
         mk.ad.checkShowInterByChance();
     }
+
+    onDestroy() {
+        const isAutoOpenPanel = gData.gameData.getProp(GameProp.isAutoOpenPanel);
+        if (isAutoOpenPanel) {
+            mk.ui.openPanel('module/sign/sign');
+            gData.gameData.setProp(GameProp.isAutoOpenPanel, 2);
+        }
+    }
 }