woso_javan hace 3 semanas
padre
commit
c635f0ff69

+ 5 - 0
assets/module_aliens/Script/GameUtil.ts

@@ -221,4 +221,9 @@ export class GameUtil {
         return new Promise(resolve => setTimeout(resolve, seconds * 1000));
     }
 
+    static getLastNumber(str: string): number | null {
+        const match = str.match(/(\d+)$/);
+        return match ? parseInt(match[1], 10) : null;
+    }
+
 }

+ 1 - 6
assets/module_aliens/Script/Manager/LevelMgr.ts

@@ -96,7 +96,7 @@ export class LevelManager {
             }
 
             // this.randomLevel = randomLevel;
-            this.randomLevel = this.getLastNumber(randomLevel.toString())!;
+            this.randomLevel = GameUtil.getLastNumber(randomLevel.toString())!;
             console.log(`随机真实关卡level: ${this.randomLevel}`);
             this.levelModel.setLevelConfig(Number(this.randomLevel));
         }
@@ -106,11 +106,6 @@ export class LevelManager {
         EventDispatcher.instance.emit(GameEvent.EVENT_BATTLE_SUCCESS_LEVEL_UP);
     }
 
-    private getLastNumber(str: string): number | null {
-        const match = str.match(/(\d+)$/);
-        return match ? parseInt(match[1], 10) : null;
-      }
-
     async loadLevel(level: number): Promise<Node> {
         let levelPrefab = null;
         if (this.levelModel.level > GlobalConfig.levelTotal) {

+ 4 - 1
assets/module_aliens/Script/Model/LevelModel.ts

@@ -3,6 +3,7 @@ import { Tablelevels_config } from "../../../module_basic/table/Tablelevels_conf
 import { GlobalConfig } from "../../../start/Config/GlobalConfig";
 import { sys } from "cc";
 import { AliensGlobalInstance } from "../AliensGlobalInstance";
+import { GameUtil } from "../GameUtil";
 
 /**关卡数据模型
  */
@@ -47,7 +48,9 @@ export class LevelModel {
                 this.level = 1;
             } else {
                 if (level > GlobalConfig.levelTotal) {
-                    const randomLevel = this.randomLevelList[Math.floor(Math.random() * this.randomLevelList.length - 1)];
+                    let randomLevel = this.randomLevelList[Math.floor(Math.random() * this.randomLevelList.length - 1)];
+                    randomLevel = GameUtil.getLastNumber(randomLevel.toString())!;
+                    // console.log('超出最大关卡,随机关卡:', randomLevel);
                     this.level = randomLevel;
                 } else {
                     this.level = parseInt(level);

+ 2 - 2
profiles/v2/packages/builder.json

@@ -100,7 +100,7 @@
         "progress": 1,
         "state": "success",
         "stage": "run",
-        "message": "2025-5-16 16:31:30 run package E:\\CocosCreator\\_Aliens\\build\\web-mobile success!",
+        "message": "2025-5-16 17:01:46 run package E:\\CocosCreator\\_Aliens\\build\\web-mobile success!",
         "options": {
           "name": "SnipingAliens",
           "server": "",
@@ -146,7 +146,7 @@
           "buildMode": "normal",
           "logDest": "project://temp/builder/log/web-mobile2025-1-13 17-06.log"
         },
-        "time": "2025-5-16 16:30:43",
+        "time": "2025-5-16 17:01:01",
         "dirty": false
       },
       "1741673552280": {