refactor(mission economy): 统一出售金币加成计算逻辑

移除冗余的SellBonus字段计算,将出售返还加成合并到SellGold口径中,同时清理废弃的技能配置项和注释。
This commit is contained in:
pan
2026-06-03 10:24:37 +08:00
parent f00b9496e2
commit 5c81227169
2 changed files with 4 additions and 5 deletions

View File

@@ -368,9 +368,9 @@ export enum FieldSkillType {
HeroCritDamage = 11, // 英雄暴击伤害加成
HeroSpeed = 12, // 英雄攻击速度加成
// ---- 13~18 由 TalentSet 迁移而来,统一为驻场口径 ----
// 备注SellGold 已原生覆盖"出售返还"语义,故 TalentSet 中的 SellBonus 不再单独保留
BuyDiscount = 13, // 购买卡牌费用减免(金币)
RefreshDiscount = 14, // 刷新卡牌费用减免(金币)
SellBonus = 15, // 出售英雄额外返还(金币)
HeroHp = 16, // 英雄最大生命加成
HeroWindFury = 17, // 英雄风怒概率加成
HeroPuncture = 18, // 英雄穿刺概率加成
@@ -398,9 +398,9 @@ export const FieldSkillSet: Record<number, FieldSkillConfig> = {
7011: { uuid: 7011, name: "暴伤加成", type: FieldSkillType.HeroCritDamage, value: 0.5, info: "英雄暴击伤害+50%" },
7012: { uuid: 7012, name: "攻速加成", type: FieldSkillType.HeroSpeed, value: 0.2, info: "英雄攻击速度+20%" },
// ---- 13~18 来自原 TalentSet统一为驻场百分比 / 绝对值口径 ----
// 出售返还由原生 SellGold 承担SellBonus 不再单独配置
7013: { uuid: 7013, name: "购买优惠", type: FieldSkillType.BuyDiscount, value: 1, info: "购买卡牌费用-1金币" },
7014: { uuid: 7014, name: "刷新优惠", type: FieldSkillType.RefreshDiscount, value: 1, info: "刷新卡牌费用-1金币" },
7015: { uuid: 7015, name: "出售返还", type: FieldSkillType.SellBonus, value: 1, info: "出售英雄额外+1金币" },
7016: { uuid: 7016, name: "生命加成", type: FieldSkillType.HeroHp, value: 0.1, info: "英雄最大生命+10%" },
7017: { uuid: 7017, name: "风怒加成", type: FieldSkillType.HeroWindFury, value: 0.1, info: "英雄风怒概率+10%" },
7018: { uuid: 7018, name: "穿刺加成", type: FieldSkillType.HeroPuncture, value: 0.1, info: "英雄穿刺概率+10%" },

View File

@@ -72,10 +72,9 @@ export class MissionEconomy {
static getSellGold(heroLevel: number = 1): number {
const sellByLevel: Record<number, number> = { 1: 3, 2: 10, 3: 25 };
const baseSellGold = sellByLevel[heroLevel] || 3;
// 驻场英雄带来的"出售金币"加成(包含原 SellBonus 语义,统一在 SellGold 中)
const goldBoost = FieldSkillHelper.getFieldSkillTotalValue(FieldSkillType.SellGold);
// 驻场英雄带来的"出售返还"加成
const sellBonus = FieldSkillHelper.getFieldSkillTotalValue(FieldSkillType.SellBonus);
const totalSellGold = baseSellGold + goldBoost + sellBonus;
const totalSellGold = baseSellGold + goldBoost;
return Math.floor(totalSellGold);
}