refactor(map): 重构怪物池配置,改为动态提取

将硬编码的怪物列表改为从HeroInfo动态获取,移除硬编码的怪物UUID配置,同时引入FacSet依赖来区分怪物阵营
This commit is contained in:
pan
2026-07-03 17:13:52 +08:00
parent 6038bb71c7
commit 257e0b4870

View File

@@ -11,6 +11,7 @@
*/ */
import { HeroInfo, MonType, MonTypeName } from "../common/config/heroSet"; import { HeroInfo, MonType, MonTypeName } from "../common/config/heroSet";
import { FacSet } from "../common/config/GameSet";
// ======================== 词缀类型枚举 ======================== // ======================== 词缀类型枚举 ========================
@@ -30,15 +31,16 @@ export enum AffixType {
// ======================== 怪物 UUID 池 ======================== // ======================== 怪物 UUID 池 ========================
export const MonList: Record<number, number[]> = { export const MonList: Record<number, number[]> = {};
[MonType.Melee]: [6001, 6002], // 动态从 HeroInfo 中提取怪物分类,避免硬编码
[MonType.Heavy]: [6003], for (const key in HeroInfo) {
[MonType.Long]: [6004], const info = HeroInfo[key];
[MonType.Support]: [6007], if (info.fac === FacSet.MON && info.monType !== undefined) {
[MonType.Summoner]: [6008], if (!MonList[info.monType]) {
[MonType.Assassin]: [6005], MonList[info.monType] = [];
[MonType.MeleeBoss]: [6006, 6101, 6102, 6106], }
[MonType.LongBoss]: [6103, 6104, 6105], MonList[info.monType].push(info.uuid);
}
} }
// ======================== 测试模式配置 ======================== // ======================== 测试模式配置 ========================