refactor(mission): 重构关卡结算与刷怪统计逻辑
1. 新增整局跨回合刷怪统计与重置能力,替换原小节统计 2. 修改奖励配置为整局5回合累计结算逻辑 3. 调整失败奖励判定为整局维度统计 4. 重构胜利/失败奖励计算逻辑,适配多回合关卡
This commit is contained in:
@@ -219,38 +219,40 @@ export function getLvColor(lv: number): Color {
|
||||
export const RARITY_BG_COLORS: string[] = ["green", "blue", "purple", "yellow", "red"];
|
||||
|
||||
/**
|
||||
* 战斗结算奖励配置(每节结束后发放:英雄碎片 + 金币 + 天赋经验)。
|
||||
* 胜利奖励随关卡进度(怪物等级 = 大关号)线性增长,整体乘以 victory_multiplier。
|
||||
* 战斗结算奖励配置(一关 5 回合累计,整关结算时一次性发放:英雄碎片 + 金币 + 天赋经验)。
|
||||
* 通关奖励 = 每回合奖励 × 胜利回合数(wave_win_count),全员存活回合再 × per_wave 加成。
|
||||
* Why: 一关一局 5 回合后,通关不再是单场,改按"5 回合累计"发放,
|
||||
* 每回合基础奖励随关卡进度(怪物等级 = 大关号)增长。
|
||||
*/
|
||||
export const VICTORY_REWARD_SET = {
|
||||
/** 金币:base + monLv × per_lv */
|
||||
/** 金币:每回合 base + monLv × per_lv,× 胜利回合数累计 */
|
||||
gold: { base: 100, per_lv: 50 },
|
||||
/** 天赋经验:base + monLv × per_lv */
|
||||
/** 天赋经验:每回合 base + monLv × per_lv,× 胜利回合数累计 */
|
||||
talent_exp: { base: 20, per_lv: 10 },
|
||||
/** 每个出场英雄保底碎片数 */
|
||||
/** 每个出场英雄保底碎片数(× 胜利回合数累计) */
|
||||
played_fragment: 1,
|
||||
/** 随机英雄碎片数量(发放给随机抽中的 1 个英雄) */
|
||||
/** 随机英雄碎片数量(发放给随机抽中的 1 个英雄,× 胜利回合数累计) */
|
||||
random_fragment: 2,
|
||||
/** 银币:固定发放,不分输赢 */
|
||||
/** 银币:固定发放,不分输赢(通关时 × 胜利回合数累计) */
|
||||
silver: 3,
|
||||
/** 钻石:按输赢在 [min, max] 闭区间内随机(不参与 victory_multiplier) */
|
||||
/** 钻石:按输赢在 [min, max] 闭区间内随机(通关时 × 胜利回合数累计,不参与 per_wave 加成) */
|
||||
diamond: {
|
||||
victory: { min: 5, max: 10 },
|
||||
defeat: { min: 1, max: 3 },
|
||||
},
|
||||
/** 胜利加成系数(失败 1.0) */
|
||||
victory_multiplier: 1.2,
|
||||
/** 全员存活回合加成系数:每个全员存活回合额外 +20%(乘法叠乘于累计基础之上) */
|
||||
per_wave_bonus: 0.2,
|
||||
/**
|
||||
* 失败奖励限制(不影响胜利):
|
||||
* 坚持 < defeat_time_threshold 秒或本节一只怪未杀 → 无任何奖励;
|
||||
* 达标后 = 坚持奖励(固定)+ 击杀比例奖励(基数 × 本节击杀比例)
|
||||
* 坚持 < defeat_time_threshold 秒或本回合一只怪未杀 → 无任何奖励;
|
||||
* 达标后 = 坚持奖励(固定)+ 击杀比例奖励(基数 × 本回合击杀比例)
|
||||
*/
|
||||
defeat: {
|
||||
/** 坚持时间门槛(秒) */
|
||||
time_threshold: 15,
|
||||
/** 超门槛固定奖励("超 15 秒奖励") */
|
||||
survive: { gold: 50, talent_exp: 10 },
|
||||
/** 击杀比例奖励基数(本节怪物全灭时全额发放) */
|
||||
/** 击杀比例奖励基数(本回合怪物全灭时全额发放) */
|
||||
kill: { gold: 150, talent_exp: 30 },
|
||||
},
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user