refactor(config): 统一技能范围类型命名与逻辑
1. 移除废弃的aoe_grid范围类型,统一使用range类型 2. 更新文档、配置表和代码中的相关描述与枚举定义 3. 清理技能目标选择逻辑中针对aoe_grid的冗余代码
This commit is contained in:
@@ -15,7 +15,6 @@ import { SkillTriggerType } from "../common/config/heroSet";
|
||||
import { SkillTriggerHelper } from "./SkillTriggerHelper";
|
||||
import { MissionEconomy } from "../map/MissionEconomy";
|
||||
import { mLogger } from "../common/Logger";
|
||||
import { MissionHeroComp } from "../map/MissionHeroComp";
|
||||
import { buffManager } from "./BuffManager";
|
||||
|
||||
/**
|
||||
@@ -759,26 +758,8 @@ export class SCastSystem extends ecs.ComblockSystem implements ecs.ISystemUpdate
|
||||
* 解析对敌技能目标点:
|
||||
* - 非范围技能:按施法方向生成目标点
|
||||
* - range 范围技能:优先前排敌人位置
|
||||
* - aoe_grid 范围技能:以中路第2或第3列为目标(若存在敌人优先第2列,否则第3列;这里简化为直接返回第2列中路的固定坐标,或者根据情况处理)
|
||||
*/
|
||||
private resolveEnemyCastTargetPos(config: SkillConfig, heroAttrs: HeroAttrsComp, heroView: HeroViewComp, nearestEnemy: HeroViewComp, maxRange: number): Vec3 | null {
|
||||
if (config.DTType === DTType.aoe_grid) {
|
||||
const isHero = heroAttrs.fac === FacSet.HERO;
|
||||
if (isHero) {
|
||||
// 怪物已改为从 X=400 出生后动态向左推进,不再有固定列阵型。
|
||||
// aoe_grid 直接以最近敌人的真实位置作为目标点,
|
||||
// 由技能自身的范围半径负责命中附近的怪物集群。
|
||||
if (nearestEnemy?.node) {
|
||||
return nearestEnemy.node.position.clone();
|
||||
}
|
||||
return null;
|
||||
} else {
|
||||
// 怪物打英雄:以英雄编队中排基准点为 AOE 目标
|
||||
// (英雄已改为按职业优先级从最右向左排队,中排 -260 即队伍中部)
|
||||
return MissionHeroComp.HERO_ROW_MID.clone();
|
||||
}
|
||||
}
|
||||
|
||||
if (config.RType === RType.bezier) {
|
||||
return nearestEnemy.node?.position.clone() ?? null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user