refactor(game): 精简肉鸽模式关卡配置并优化怪物加载逻辑

- 调整SkillSet基础攻击技能参数,降低CD时间和技能消耗
- 更新HeroInfo中英雄和怪物的技能组合,替换为更合理的技能ID
- 注释掉部分法师及精英怪物的定义,简化怪物列表
- 优化Monster类load和hero_init方法,移除不再使用的增强属性和关卡倍数参数
- 精简MissionMonComp刷怪队列逻辑,移除增强属性和关卡倍数支持
- 调整RogueConfig,去除怪物增强属性相关代码,仅保留基础刷怪类型和数量配置
- 修正SkillCom中使用属性枚举的地方,使用统一Attrs枚举
- 清理代码注释和多余空行,提升代码规范性和可读性
This commit is contained in:
2025-10-19 12:06:18 +08:00
parent faae0f8005
commit 6d5c768a30
6 changed files with 89 additions and 351 deletions

View File

@@ -30,7 +30,7 @@ export class Monster extends ecs.Entity {
}
/** 加载角色 */
load(pos: Vec3 = Vec3.ZERO,scale:number = 1,uuid:number=1001,is_boss:boolean=false,is_call:boolean=false,enhancement?: any, stageMultipliers?: any) {
load(pos: Vec3 = Vec3.ZERO,scale:number = 1,uuid:number=1001,is_boss:boolean=false,is_call:boolean=false) {
scale=-1
let box_group=BoxSet.MONSTER
// console.log("mon load",uuid)
@@ -45,7 +45,7 @@ export class Monster extends ecs.Entity {
const collider = node.getComponent(BoxCollider2D);
if (collider) collider.enabled = false; // 先禁用 // 延迟一帧启用碰撞体
node.setPosition(pos)
this.hero_init(uuid,node,scale,box_group,is_boss,is_call,enhancement,stageMultipliers)
this.hero_init(uuid,node,scale,box_group,is_boss,is_call)
oops.message.dispatchEvent("monster_load",this)
// 初始化移动参数
@@ -62,7 +62,7 @@ export class Monster extends ecs.Entity {
node.parent = scene.entityLayer!.node!
node.setPosition(pos)
}
hero_init(uuid:number=1001,node:Node,scale:number=1,box_group=BoxSet.HERO,is_boss:boolean=false,is_call:boolean=false,enhancement?: any, stageMultipliers?: any) {
hero_init(uuid:number=1001,node:Node,scale:number=1,box_group=BoxSet.HERO,is_boss:boolean=false,is_call:boolean=false) {
var hv = node.getComponent(HeroViewComp)!;
@@ -80,28 +80,18 @@ export class Monster extends ecs.Entity {
hv.hero_uuid= uuid;
hv.hero_name= hero.name;
// 初始化Attrs属性系统参考Hero.ts的实
// 计算基础属性(使用关卡倍数)
// 初始化基础属性
const baseHp = hero.hp;
const baseAp = hero.ap;
// 应用关卡倍数
let finalHp = baseHp;
let finalAp = baseAp;
if (stageMultipliers) {
finalHp = Math.floor(baseHp * stageMultipliers.hp);
finalAp = Math.floor(baseAp * stageMultipliers.attack);
// console.log(`[Monster]: 怪物${hero.name} 关卡倍数 - HP: ${baseHp} x ${stageMultipliers.hp.toFixed(2)} = ${finalHp}, AP: ${baseAp} x ${stageMultipliers.attack.toFixed(2)} = ${finalAp}`);
}
for(let i=0;i<hero.skills.length;i++){
let skill={ uuid:SkillSet[hero.skills[i]].uuid, cd_max:SkillSet[hero.skills[i]].cd,cost:SkillSet[hero.skills[i]].cost,cd:0 }
hv.skills.push(skill)
}
hv.base_ap=finalAp
hv.base_ap=baseAp
hv.base_map=hero.mp
hv.base_def=hero.def
hv.base_hp=finalHp
hv.base_hp=baseHp
hv.base_mp=hero.mp
hv.hp=hv.base_hp
hv.mp=hv.base_mp
@@ -116,8 +106,6 @@ export class Monster extends ecs.Entity {
// 初始化 buff/debuff 系统
hv.initAttrs();
this.add(hv);
}