181404010226 3 месяцев назад
Родитель
Сommit
7c860589c9

+ 28 - 27
assets/Scenes/GameLevel.scene

@@ -164,7 +164,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 360,
+      "x": 360.00000000000006,
       "y": 667,
       "z": 0
     },
@@ -373,7 +373,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 1000,
+      "width": 1000.0000000000001,
       "height": 5
     },
     "_anchorPoint": {
@@ -737,7 +737,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 720,
+      "width": 720.0000000000001,
       "height": 1334
     },
     "_anchorPoint": {
@@ -852,7 +852,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 0,
+      "x": -5.684341886080802e-14,
       "y": 0,
       "z": 0
     },
@@ -9782,7 +9782,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 0,
+      "x": -5.684341886080802e-14,
       "y": 0,
       "z": 0
     },
@@ -13652,7 +13652,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": -310,
+      "x": -310.00000000000006,
       "y": 577.3409999999999,
       "z": 0
     },
@@ -13710,7 +13710,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 360,
+      "x": 360.00000000000006,
       "y": 667,
       "z": 0
     },
@@ -13840,7 +13840,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 720,
+      "width": 720.0000000000001,
       "height": 1334
     },
     "_anchorPoint": {
@@ -15887,6 +15887,7 @@
       "__uuid__": "1c849357-c55e-459c-b570-7ecc0c2b6b3d",
       "__expectedType__": "cc.Prefab"
     },
+    "spawnOffsetX": 24,
     "_id": "3dRhnnV/VBSqa26i6VSXSs"
   },
   {
@@ -18596,7 +18597,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 720,
+      "width": 720.0000000000001,
       "height": 1334
     },
     "_anchorPoint": {
@@ -19036,7 +19037,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 0,
+      "x": -5.684341886080802e-14,
       "y": 97.5,
       "z": 0
     },
@@ -21120,7 +21121,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 720,
+      "width": 720.0000000000001,
       "height": 1334
     },
     "_anchorPoint": {
@@ -21254,7 +21255,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 0.14999999999997726,
+      "x": 0.1500000000000341,
       "y": -588.66,
       "z": 0
     },
@@ -21318,7 +21319,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": -342.65,
+      "x": -342.6500000000001,
       "y": 0,
       "z": 0
     },
@@ -26706,7 +26707,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 705.3,
+      "width": 705.3000000000002,
       "height": 130
     },
     "_anchorPoint": {
@@ -34088,7 +34089,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 1,
+      "x": 0.9999999999999432,
       "y": -6,
       "z": 0
     },
@@ -35826,7 +35827,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 720,
+      "width": 720.0000000000001,
       "height": 1334
     },
     "_anchorPoint": {
@@ -35878,7 +35879,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 720,
+      "width": 720.0000000000001,
       "height": 1334
     },
     "_anchorPoint": {
@@ -36004,7 +36005,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": -216,
+      "x": -216.00000000000003,
       "y": 138.5,
       "z": 0
     },
@@ -37792,7 +37793,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 216,
+      "x": 216.00000000000003,
       "y": 138.5,
       "z": 0
     },
@@ -38989,7 +38990,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 720,
+      "width": 720.0000000000001,
       "height": 469
     },
     "_anchorPoint": {
@@ -39131,7 +39132,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 1000,
+      "width": 1000.0000000000001,
       "height": 5
     },
     "_anchorPoint": {
@@ -39505,7 +39506,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 1604.706,
+      "x": 1604.7060000000001,
       "y": 0,
       "z": 0
     },
@@ -39668,7 +39669,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 257,
+      "x": 257.0000000000002,
       "y": 175.274,
       "z": 0
     },
@@ -43536,7 +43537,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 609,
+      "width": 609.0000000000005,
       "height": 428
     },
     "_anchorPoint": {
@@ -43718,7 +43719,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 281.9,
+      "x": 281.90000000000003,
       "y": 553.12,
       "z": 0
     },
@@ -43915,7 +43916,7 @@
     "_prefab": null,
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 281.5,
+      "x": 281.50000000000006,
       "y": 485.124,
       "z": 0
     },
@@ -45034,7 +45035,7 @@
     "__prefab": null,
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 720,
+      "width": 720.0000000000001,
       "height": 1334
     },
     "_anchorPoint": {

+ 0 - 9
assets/data/backups/levels.meta

@@ -1,9 +0,0 @@
-{
-  "ver": "1.2.0",
-  "importer": "directory",
-  "imported": true,
-  "uuid": "401feb1a-dfb0-42b6-82c7-9392998e29ce",
-  "files": [],
-  "subMetas": {},
-  "userData": {}
-}

+ 19 - 19
assets/data/enemies.json

@@ -193,13 +193,13 @@
       "health": 40,
       "maxHealth": 9999,
       "defense": 0,
-      "speed": 12.0,
+      "speed": 15.0,
       "dropEnergy": 1,
       "dropCoins": 2
     },
     "movement": {
       "pattern": "direct",
-      "speed": 12.0,
+      "speed": 15.0,
       "patrolRange": 100,
       "rotationSpeed": 180.0,
       "moveType": "sway",
@@ -222,7 +222,7 @@
       "projectileSpeed": 100.0
     },
     "visualConfig": {
-      "spritePath": "Animation/EnemyAni/003",
+      "spritePath": "Animation/EnemyAni/004",
       "scale": 1.0,
       "animationSpeed": 1.0,
       "flipX": false,
@@ -315,7 +315,7 @@
       "projectileSpeed": 50.0
     },
     "visualConfig": {
-      "spritePath": "Animation/EnemyAni/004",
+      "spritePath": "Animation/EnemyAni/003",
       "scale": 1.0,
       "animationSpeed": 1.0,
       "flipX": false,
@@ -326,7 +326,7 @@
         "attack": "attack",
         "death": "dead"
       },
-      "weaponProp": ""
+      "weaponProp": "props/bow"
     },
     "audioConfig": {
       "attackSound": "enemy_attack",
@@ -419,7 +419,7 @@
         "attack": "attack",
         "death": "dead"
       },
-      "weaponProp": ""
+      "weaponProp": "nan"
     },
     "audioConfig": {
       "attackSound": "enemy_attack",
@@ -501,7 +501,7 @@
       "projectileSpeed": 100.0
     },
     "visualConfig": {
-      "spritePath": "Animation/EnemyAni/006",
+      "spritePath": "Animation/EnemyAni/008",
       "scale": 1.0,
       "animationSpeed": 1.0,
       "flipX": false,
@@ -512,7 +512,7 @@
         "attack": "attack",
         "death": "dead"
       },
-      "weaponProp": ""
+      "weaponProp": "props/tombstone"
     },
     "audioConfig": {
       "attackSound": "enemy_attack",
@@ -594,7 +594,7 @@
       "projectileSpeed": 100.0
     },
     "visualConfig": {
-      "spritePath": "Animation/EnemyAni/007",
+      "spritePath": "Animation/EnemyAni/006",
       "scale": 1.0,
       "animationSpeed": 1.0,
       "flipX": false,
@@ -687,7 +687,7 @@
       "projectileSpeed": 100.0
     },
     "visualConfig": {
-      "spritePath": "Animation/EnemyAni/008",
+      "spritePath": "Animation/EnemyAni/007",
       "scale": 1.0,
       "animationSpeed": 1.0,
       "flipX": false,
@@ -698,7 +698,7 @@
         "attack": "attack",
         "death": "dead"
       },
-      "weaponProp": "props/tombstone"
+      "weaponProp": "props/iron_gate"
     },
     "audioConfig": {
       "attackSound": "enemy_attack",
@@ -751,13 +751,13 @@
       "health": 200,
       "maxHealth": 9999,
       "defense": 0,
-      "speed": 7.0,
+      "speed": 10.0,
       "dropEnergy": 1,
       "dropCoins": 2
     },
     "movement": {
       "pattern": "direct",
-      "speed": 7.0,
+      "speed": 10.0,
       "patrolRange": 100,
       "rotationSpeed": 180.0,
       "moveType": "straight",
@@ -878,13 +878,13 @@
       "health": 300,
       "maxHealth": 9999,
       "defense": 0,
-      "speed": 7.0,
+      "speed": 10.0,
       "dropEnergy": 1,
       "dropCoins": 2
     },
     "movement": {
       "pattern": "direct",
-      "speed": 7.0,
+      "speed": 10.0,
       "patrolRange": 100,
       "rotationSpeed": 180.0,
       "moveType": "straight",
@@ -918,7 +918,7 @@
         "attack": "attack",
         "death": "dead"
       },
-      "weaponProp": ""
+      "weaponProp": "nan"
     },
     "audioConfig": {
       "attackSound": "enemy_attack",
@@ -1005,13 +1005,13 @@
       "health": 500,
       "maxHealth": 9999,
       "defense": 0,
-      "speed": 5.0,
+      "speed": 10.0,
       "dropEnergy": 1,
       "dropCoins": 2
     },
     "movement": {
       "pattern": "direct",
-      "speed": 5.0,
+      "speed": 10.0,
       "patrolRange": 100,
       "rotationSpeed": 180.0,
       "moveType": "straight",
@@ -1045,7 +1045,7 @@
         "attack": "attack",
         "death": "dead"
       },
-      "weaponProp": ""
+      "weaponProp": "nan"
     },
     "audioConfig": {
       "attackSound": "enemy_attack",

BIN
assets/data/excel/__pycache__/enemy_config_manager.cpython-313.pyc


+ 38 - 0
assets/data/excel/enemy_config_manager.py

@@ -210,6 +210,12 @@ class EnemyConfigManager:
                 weapon_prop = str(row.iloc[9]).strip()
                 if weapon_prop:
                     config['weapon_prop'] = weapon_prop
+
+            # 色调(可选),第10列
+            if len(row) > 10 and not pd.isna(row.iloc[10]):
+                tint_val = str(row.iloc[10]).strip()
+                if tint_val:
+                    config['tint'] = tint_val
                 
             visual_config[enemy_id] = config
             
@@ -426,6 +432,38 @@ class EnemyConfigManager:
             # 直接映射视觉配置
             for key, value in visual_data.items():
                 enemy_config['visual'][key] = value
+
+            # 同步到 visualConfig(供引擎使用的驼峰命名结构)
+            if 'visualConfig' not in enemy_config:
+                enemy_config['visualConfig'] = {}
+            vc = enemy_config['visualConfig']
+            v = enemy_config['visual']
+
+            # 基础字段映射:下划线 -> 驼峰
+            vc['spritePath'] = v.get('sprite_path', vc.get('spritePath', ''))
+            vc['scale'] = v.get('scale', vc.get('scale', 1.0))
+            vc['animationSpeed'] = v.get('animation_speed', vc.get('animationSpeed', 1.0))
+            vc['flipX'] = v.get('flip_horizontal', vc.get('flipX', False))
+
+            # animations 映射,保留已有值作为默认
+            v_anims = v.get('animations', {})
+            if 'animations' not in vc:
+                vc['animations'] = {}
+            for key in ['idle', 'walk', 'attack', 'death']:
+                if key in v_anims:
+                    vc['animations'][key] = v_anims[key]
+                else:
+                    vc['animations'].setdefault(key, vc['animations'].get(key, key))
+
+            # weaponProp 映射(可选)
+            if 'weapon_prop' in v:
+                vc['weaponProp'] = v['weapon_prop']
+
+            # tint 保留已有 JSON 值,若无则设为默认白色
+            if 'tint' in v:
+                vc['tint'] = v['tint']
+            else:
+                vc['tint'] = vc.get('tint', '#FFFFFF')
         
         # 更新音频配置
         if 'audio' in self.excel_data and enemy_id in self.excel_data['audio']:

BIN
assets/data/excel/~$敌人配置表.xlsx


+ 12 - 0
assets/data/excel/~$敌人配置表.xlsx.meta

@@ -0,0 +1,12 @@
+{
+  "ver": "1.0.0",
+  "importer": "*",
+  "imported": true,
+  "uuid": "25f3ab0d-335d-4caf-b89b-57b751336a0a",
+  "files": [
+    ".json",
+    ".xlsx"
+  ],
+  "subMetas": {},
+  "userData": {}
+}

BIN
assets/data/excel/关卡配置/关卡配置表.xlsx


BIN
assets/data/excel/敌人配置表.xlsx


BIN
assets/data/excel/方块武器配置/方块武器配置表.xlsx


+ 1 - 1
assets/data/levels/Level1.json

@@ -9,7 +9,7 @@
   ],
   "coinReward": 100,
   "diamondReward": 10,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.0,

+ 1 - 1
assets/data/levels/Level10.json

@@ -14,7 +14,7 @@
   ],
   "coinReward": 550,
   "diamondReward": 55,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.2,

+ 34 - 34
assets/data/levels/Level11.json

@@ -14,7 +14,7 @@
   ],
   "coinReward": 600,
   "diamondReward": 60,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.2,
@@ -51,16 +51,16 @@
         {
           "enemyType": "stealth_zombie",
           "count": 3,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.0
         },
         {
           "enemyType": "bucket_zombie",
           "count": 2,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.0
         }
@@ -89,8 +89,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.3
         }
@@ -119,8 +119,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 3,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.6
         }
@@ -141,8 +141,8 @@
         {
           "enemyType": "bucket_zombie",
           "count": 3,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.9
         },
@@ -150,7 +150,7 @@
           "enemyType": "barrel_zombie",
           "count": 3,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 1.9
         }
@@ -163,16 +163,16 @@
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 2.2
         },
         {
           "enemyType": "bucket_zombie",
           "count": 6,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 2.2
         },
@@ -194,23 +194,23 @@
           "enemyType": "barrel_zombie",
           "count": 5,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 2.5
         },
         {
           "enemyType": "stealth_zombie",
           "count": 5,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 2.5
         },
         {
           "enemyType": "bucket_zombie",
           "count": 5,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 2.5
         }
@@ -231,8 +231,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 2.8
         },
@@ -240,7 +240,7 @@
           "enemyType": "barrel_zombie",
           "count": 6,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 2.8
         }
@@ -262,7 +262,7 @@
           "enemyType": "barrel_zombie",
           "count": 8,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 3.1
         },
@@ -284,23 +284,23 @@
           "enemyType": "barrel_zombie",
           "count": 5,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 3.4
         },
         {
           "enemyType": "stealth_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.4
         },
         {
           "enemyType": "bucket_zombie",
           "count": 10,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 3.4
         }
@@ -321,16 +321,16 @@
         {
           "enemyType": "stealth_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.7
         },
         {
           "enemyType": "bucket_zombie",
           "count": 10,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 3.7
         },

+ 1 - 1
assets/data/levels/Level13.json

@@ -15,7 +15,7 @@
   ],
   "coinReward": 700,
   "diamondReward": 70,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.25,

+ 1 - 1
assets/data/levels/Level15.json

@@ -16,7 +16,7 @@
   ],
   "coinReward": 800,
   "diamondReward": 80,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.25,

+ 1 - 1
assets/data/levels/Level2.json

@@ -10,7 +10,7 @@
   ],
   "coinReward": 150,
   "diamondReward": 15,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.0,

+ 1 - 1
assets/data/levels/Level3.json

@@ -10,7 +10,7 @@
   ],
   "coinReward": 200,
   "diamondReward": 20,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.0,

+ 1 - 1
assets/data/levels/Level4.json

@@ -11,7 +11,7 @@
   ],
   "coinReward": 250,
   "diamondReward": 25,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.0,

+ 15 - 15
assets/data/levels/Level5.json

@@ -11,7 +11,7 @@
   ],
   "coinReward": 300,
   "diamondReward": 30,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.1,
@@ -31,8 +31,8 @@
         {
           "enemyType": "archer_zombie",
           "count": 3,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 1.0
         }
@@ -61,8 +61,8 @@
         {
           "enemyType": "archer_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 1.3
         }
@@ -143,8 +143,8 @@
         {
           "enemyType": "archer_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 2.2
         },
@@ -181,8 +181,8 @@
         {
           "enemyType": "archer_zombie",
           "count": 5,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 2.5
         }
@@ -241,8 +241,8 @@
         {
           "enemyType": "archer_zombie",
           "count": 8,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 3.1
         }
@@ -271,8 +271,8 @@
         {
           "enemyType": "archer_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 3.4
         }
@@ -309,8 +309,8 @@
         {
           "enemyType": "archer_zombie",
           "count": 4,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 3.7
         },

+ 37 - 37
assets/data/levels/Level6.json

@@ -12,7 +12,7 @@
   ],
   "coinReward": 350,
   "diamondReward": 35,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.1,
@@ -32,8 +32,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.0
         }
@@ -46,16 +46,16 @@
         {
           "enemyType": "archer_zombie",
           "count": 5,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 1.3
         },
         {
           "enemyType": "stealth_zombie",
           "count": 3,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.3
         }
@@ -68,16 +68,16 @@
         {
           "enemyType": "bucket_zombie",
           "count": 4,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.6
         },
         {
           "enemyType": "stealth_zombie",
           "count": 4,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.6
         }
@@ -98,16 +98,16 @@
         {
           "enemyType": "bucket_zombie",
           "count": 3,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.9
         },
         {
           "enemyType": "stealth_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.9
         }
@@ -128,8 +128,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 2.2
         },
@@ -150,16 +150,16 @@
         {
           "enemyType": "bucket_zombie",
           "count": 7,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 2.5
         },
         {
           "enemyType": "archer_zombie",
           "count": 8,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 2.5
         }
@@ -172,8 +172,8 @@
         {
           "enemyType": "bucket_zombie",
           "count": 6,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 2.8
         },
@@ -188,8 +188,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 2.8
         }
@@ -210,8 +210,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.1
         }
@@ -232,16 +232,16 @@
         {
           "enemyType": "archer_zombie",
           "count": 5,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 3.4
         },
         {
           "enemyType": "stealth_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.4
         }
@@ -254,24 +254,24 @@
         {
           "enemyType": "bucket_zombie",
           "count": 10,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 3.7
         },
         {
           "enemyType": "archer_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 3.7
         },
         {
           "enemyType": "stealth_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.7
         },

+ 37 - 37
assets/data/levels/Level7.json

@@ -12,7 +12,7 @@
   ],
   "coinReward": 400,
   "diamondReward": 40,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.1,
@@ -32,8 +32,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.0
         }
@@ -46,16 +46,16 @@
         {
           "enemyType": "archer_zombie",
           "count": 5,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 1.3
         },
         {
           "enemyType": "stealth_zombie",
           "count": 3,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.3
         }
@@ -68,16 +68,16 @@
         {
           "enemyType": "bucket_zombie",
           "count": 4,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.6
         },
         {
           "enemyType": "stealth_zombie",
           "count": 4,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.6
         }
@@ -98,16 +98,16 @@
         {
           "enemyType": "bucket_zombie",
           "count": 3,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.9
         },
         {
           "enemyType": "stealth_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.9
         }
@@ -128,8 +128,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 2.2
         },
@@ -150,16 +150,16 @@
         {
           "enemyType": "bucket_zombie",
           "count": 7,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 2.5
         },
         {
           "enemyType": "archer_zombie",
           "count": 8,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 2.5
         }
@@ -172,8 +172,8 @@
         {
           "enemyType": "bucket_zombie",
           "count": 6,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 2.8
         },
@@ -188,8 +188,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 2.8
         }
@@ -210,8 +210,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.1
         }
@@ -232,16 +232,16 @@
         {
           "enemyType": "archer_zombie",
           "count": 5,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 3.4
         },
         {
           "enemyType": "stealth_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.4
         }
@@ -254,24 +254,24 @@
         {
           "enemyType": "bucket_zombie",
           "count": 10,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 3.7
         },
         {
           "enemyType": "archer_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 3.7
         },
         {
           "enemyType": "stealth_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.7
         },

+ 36 - 36
assets/data/levels/Level8.json

@@ -13,7 +13,7 @@
   ],
   "coinReward": 450,
   "diamondReward": 45,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.1,
@@ -25,16 +25,16 @@
         {
           "enemyType": "bucket_zombie",
           "count": 3,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.0
         },
         {
           "enemyType": "stealth_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.0
         }
@@ -47,16 +47,16 @@
         {
           "enemyType": "bucket_zombie",
           "count": 3,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.3
         },
         {
           "enemyType": "stealth_zombie",
           "count": 3,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.3
         },
@@ -64,7 +64,7 @@
           "enemyType": "barrel_zombie",
           "count": 2,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 1.3
         }
@@ -85,8 +85,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.6
         },
@@ -94,7 +94,7 @@
           "enemyType": "barrel_zombie",
           "count": 3,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 1.6
         }
@@ -115,8 +115,8 @@
         {
           "enemyType": "bucket_zombie",
           "count": 3,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.9
         },
@@ -124,7 +124,7 @@
           "enemyType": "barrel_zombie",
           "count": 2,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 1.9
         }
@@ -145,8 +145,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 2.2
         },
@@ -175,8 +175,8 @@
         {
           "enemyType": "bucket_zombie",
           "count": 5,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 2.5
         },
@@ -184,7 +184,7 @@
           "enemyType": "barrel_zombie",
           "count": 3,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 2.5
         }
@@ -197,16 +197,16 @@
         {
           "enemyType": "bucket_zombie",
           "count": 6,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 2.8
         },
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 2.8
         },
@@ -214,7 +214,7 @@
           "enemyType": "barrel_zombie",
           "count": 6,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 2.8
         }
@@ -235,8 +235,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.1
         },
@@ -244,7 +244,7 @@
           "enemyType": "barrel_zombie",
           "count": 6,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 3.1
         }
@@ -265,16 +265,16 @@
         {
           "enemyType": "stealth_zombie",
           "count": 6,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.4
         },
         {
           "enemyType": "bucket_zombie",
           "count": 9,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 3.4
         }
@@ -295,8 +295,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 3.7
         },
@@ -304,7 +304,7 @@
           "enemyType": "barrel_zombie",
           "count": 10,
           "spawnInterval": 3.0,
-          "spawnDelay": 0.0,
+          "spawnDelay": 2.0,
           "characteristics": "爆炸伤害, 自爆攻击",
           "healthMultiplier": 3.7
         },

+ 27 - 27
assets/data/levels/Level9.json

@@ -13,7 +13,7 @@
   ],
   "coinReward": 500,
   "diamondReward": 50,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.2,
@@ -25,8 +25,8 @@
         {
           "enemyType": "bucket_zombie",
           "count": 3,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.0
         },
@@ -63,16 +63,16 @@
         {
           "enemyType": "archer_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 1.3
         },
         {
           "enemyType": "bucket_zombie",
           "count": 2,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.3
         }
@@ -93,8 +93,8 @@
         {
           "enemyType": "stealth_zombie",
           "count": 2,
-          "spawnInterval": 4.0,
-          "spawnDelay": 20.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 15.0,
           "characteristics": "隐身能力, 快速移动",
           "healthMultiplier": 1.6
         },
@@ -123,16 +123,16 @@
         {
           "enemyType": "archer_zombie",
           "count": 3,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 1.9
         },
         {
           "enemyType": "bucket_zombie",
           "count": 2,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 1.9
         }
@@ -191,8 +191,8 @@
         {
           "enemyType": "bucket_zombie",
           "count": 3,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 2.5
         }
@@ -205,8 +205,8 @@
         {
           "enemyType": "archer_zombie",
           "count": 18,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 2.8
         }
@@ -235,8 +235,8 @@
         {
           "enemyType": "bucket_zombie",
           "count": 5,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 3.1
         },
@@ -273,16 +273,16 @@
         {
           "enemyType": "archer_zombie",
           "count": 5,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 3.4
         },
         {
           "enemyType": "bucket_zombie",
           "count": 5,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 3.4
         }
@@ -303,16 +303,16 @@
         {
           "enemyType": "archer_zombie",
           "count": 10,
-          "spawnInterval": 4.0,
-          "spawnDelay": 18.0,
+          "spawnInterval": 5.0,
+          "spawnDelay": 10.0,
           "characteristics": "远程弓箭攻击",
           "healthMultiplier": 3.7
         },
         {
           "enemyType": "bucket_zombie",
           "count": 10,
-          "spawnInterval": 2.0,
-          "spawnDelay": 0.0,
+          "spawnInterval": 3.0,
+          "spawnDelay": 2.0,
           "characteristics": "超高生命, 慢速移动",
           "healthMultiplier": 3.7
         },

+ 1 - 1
assets/data/levels/level12.json

@@ -15,7 +15,7 @@
   ],
   "coinReward": 650,
   "diamondReward": 65,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.2,

+ 1 - 1
assets/data/levels/level14.json

@@ -16,7 +16,7 @@
   ],
   "coinReward": 750,
   "diamondReward": 75,
-  "initialCoins": 100,
+  "initialCoins": 45,
   "timeLimit": 300,
   "difficulty": "normal",
   "healthMultiplier": 1.25,

+ 19 - 19
assets/data/weapons.json

@@ -15,8 +15,8 @@
       ],
       "stats": {
         "damage": 10,
-        "fireRate": 10.0,
-        "range": 450,
+        "fireRate": 4.0,
+        "range": 500,
         "bulletSpeed": 40
       },
       "bulletConfig": {
@@ -131,8 +131,8 @@
       ],
       "stats": {
         "damage": 7,
-        "fireRate": 10.0,
-        "range": 400,
+        "fireRate": 4.0,
+        "range": 500,
         "bulletSpeed": 20
       },
       "bulletConfig": {
@@ -250,8 +250,8 @@
       ],
       "stats": {
         "damage": 5,
-        "fireRate": 10.0,
-        "range": 350,
+        "fireRate": 4.0,
+        "range": 500,
         "bulletSpeed": 30
       },
       "bulletConfig": {
@@ -364,7 +364,7 @@
       "name": "西瓜炸弹",
       "type": "explosive",
       "weight": 15,
-      "unlockLevel": 4,
+      "unlockLevel": 5,
       "rarityDamageMultipliers": [
         1.0,
         2.0,
@@ -374,7 +374,7 @@
       ],
       "stats": {
         "damage": 5,
-        "fireRate": 10.0,
+        "fireRate": 4.0,
         "range": 1000,
         "bulletSpeed": 20
       },
@@ -483,7 +483,7 @@
       "name": "回旋镖盆栽",
       "type": "boomerang",
       "weight": 18,
-      "unlockLevel": 5,
+      "unlockLevel": 7,
       "rarityDamageMultipliers": [
         1.0,
         2.0,
@@ -493,7 +493,7 @@
       ],
       "stats": {
         "damage": 7,
-        "fireRate": 10.0,
+        "fireRate": 4.0,
         "range": 1000,
         "bulletSpeed": 20
       },
@@ -601,7 +601,7 @@
       "name": "炙热辣椒",
       "type": "area_burn",
       "weight": 12,
-      "unlockLevel": 6,
+      "unlockLevel": 9,
       "rarityDamageMultipliers": [
         1.0,
         2.0,
@@ -611,7 +611,7 @@
       ],
       "stats": {
         "damage": 2,
-        "fireRate": 10.0,
+        "fireRate": 4.0,
         "range": 500,
         "bulletSpeed": 20
       },
@@ -726,7 +726,7 @@
       "name": "仙人散弹",
       "type": "shotgun",
       "weight": 22,
-      "unlockLevel": 7,
+      "unlockLevel": 11,
       "rarityDamageMultipliers": [
         1.0,
         2.0,
@@ -736,7 +736,7 @@
       ],
       "stats": {
         "damage": 8,
-        "fireRate": 10.0,
+        "fireRate": 4.0,
         "range": 500,
         "bulletSpeed": 40
       },
@@ -843,7 +843,7 @@
       "name": "秋葵导弹",
       "type": "homing_missile",
       "weight": 8,
-      "unlockLevel": 8,
+      "unlockLevel": 13,
       "rarityDamageMultipliers": [
         1.0,
         2.0,
@@ -853,7 +853,7 @@
       ],
       "stats": {
         "damage": 15,
-        "fireRate": 10.0,
+        "fireRate": 4.0,
         "range": 500,
         "bulletSpeed": 15
       },
@@ -963,7 +963,7 @@
       "name": "狼牙棒",
       "type": "melee",
       "weight": 20,
-      "unlockLevel": 9,
+      "unlockLevel": 15,
       "rarityDamageMultipliers": [
         1.0,
         2.0,
@@ -973,8 +973,8 @@
       ],
       "stats": {
         "damage": 10,
-        "fireRate": 8.0,
-        "range": 400,
+        "fireRate": 4.0,
+        "range": 500,
         "bulletSpeed": 35
       },
       "bulletConfig": {

+ 10 - 0
assets/scripts/Animations/DamageNumberAni.ts

@@ -21,6 +21,11 @@ export class DamageNumberAni extends Component {
     
     @property({ type: Prefab, tooltip: 'EnemyLabel预制体引用' })
     private enemyLabelPrefab: Prefab = null;
+
+    // 为频繁触发的伤害数字提供左右交替的偏移,避免重叠
+    @property({ tooltip: '伤害数字左右偏移距离(像素)' })
+    private spawnOffsetX: number = 24;
+    private alternatingSide: number = 1; // 1: 向右, -1: 向左
     
     onLoad() {
         // 自动获取同节点上的EnemyController组件
@@ -73,6 +78,11 @@ export class DamageNumberAni extends Component {
             const localPos = gameAreaTransform.convertToNodeSpaceAR(worldPosition);
             // 稍微向上偏移,显示在敌人头顶
             localPos.y += 30;
+            // 为频繁伤害提供左右交替偏移,避免重叠在同一点
+            const offset = isCritical ? this.spawnOffsetX * 1.2 : this.spawnOffsetX;
+            localPos.x += this.alternatingSide * offset;
+            // 切换下次生成方向
+            this.alternatingSide = -this.alternatingSide;
             damageNode.position = localPos;
         }
         

+ 1 - 1
assets/scripts/CombatSystem/EnemyInstance.ts

@@ -727,7 +727,7 @@ export class EnemyInstance extends Component {
     private updatePatrolMovement(deltaTime: number) {
         // 更新方向变化计时器
         this.changeDirectionTime += deltaTime;
-        
+        console.log(`[EnemyInstance] 摆动 调用,changeDirectionTime=${this.changeDirectionTime}`);
         // 根据巡逻范围决定方向变化
         const enemySprite = this.node.getChildByName('EnemySprite');
         if (enemySprite && this.controller) {

+ 0 - 56
assets/scripts/LevelSystem/LevelConfigManager.ts

@@ -277,62 +277,6 @@ export class LevelConfigManager extends Component {
         this.validateConfigs();
     }
 
-    /**
-     * 创建示例关卡配置(开发辅助)
-     */
-    public generateSampleConfig(levelId: number): LevelConfig {
-        const samples = {
-            1: {
-                name: '新手引导(草地平原)',
-                scene: 'grassland',
-                backgroundImage: 'images/LevelBackground/BG1',
-                weapons: ['毛豆射手', '尖胡萝卜'],
-                waves: [
-                    {
-                        waveId: 1,
-                        enemies: [
-                            { enemyType: '普通僵尸', count: 8, spawnInterval: 5, characteristics: ['中速移动', '无技能'] }
-                        ]
-                    },
-                    {
-                        waveId: 2,
-                        enemies: [
-                            { enemyType: '普通僵尸', count: 10, spawnInterval: 5, characteristics: ['中速移动', '无技能'] }
-                        ]
-                    },
-                    {
-                        waveId: 3,
-                        enemies: [
-                            { enemyType: '路障僵尸', count: 5, spawnInterval: 6, characteristics: ['高生命', '慢速移动'] }
-                        ]
-                    }
-                ]
-            },
-            2: {
-                name: '丛林探险(森林场景)',
-                scene: 'forest',
-                backgroundImage: 'images/LevelBackground/BG2',
-                weapons: ['锯齿草', '西瓜炸弹', '毛豆射手'],
-                waves: [
-                    {
-                        waveId: 1,
-                        enemies: [
-                            { enemyType: '普通僵尸', count: 10, spawnInterval: 4, characteristics: ['中速移动', '无技能'] }
-                        ]
-                    },
-                    {
-                        waveId: 2,
-                        enemies: [
-                            { enemyType: '漫步僵尸', count: 6, spawnInterval: 5, characteristics: ['左右摇摆', '近战范围大'] }
-                        ]
-                    }
-                ]
-            }
-        };
-
-        return samples[levelId] || samples[1];
-    }
-
     /**
      * 调试:打印所有关卡配置信息
      */