/** * @file TalentSet.ts * @description 天赋系统配置数据,包含经验要求、消耗、每个天赋的具体加成数值和描述。 */ export interface TalentInfo { /** 天赋 ID */ id: number; /** 天赋名称 */ name: string; /** 天赋图标或标识(可选) */ icon?: string; /** 描述模板,使用 {value} 替换具体数值 */ desc: string; /** 最大等级 */ maxLevel: number; /** 每级提升的数值 */ valuePerLevel: number; /** 获取指定等级下的实际加成数值 */ getValue: (level: number) => number; } export const TalentConfig = { // 玩家升级所需经验配置 expRequirements: [ { maxLevel: 10, expPerLevel: 100 }, { maxLevel: 20, expPerLevel: 150 }, { maxLevel: 30, expPerLevel: 200 } ], // 天赋升级消耗点数 (第1级到第5级消耗) costPerLevel: [1, 1, 2, 2, 3], // 天赋列表 talents: [ { id: 1, name: "攻击强化", icon: "⚔️", desc: "所有英雄 ATK +{value}%", maxLevel: 5, valuePerLevel: 3, getValue: (level: number) => level * 3 }, { id: 2, name: "生命强化", icon: "❤️", desc: "所有英雄 HP +{value}%", maxLevel: 5, valuePerLevel: 5, getValue: (level: number) => level * 5 }, { id: 3, name: "暴击强化", icon: "🔥", desc: "所有英雄暴击率 +{value}%", maxLevel: 5, valuePerLevel: 2, getValue: (level: number) => level * 2 }, { id: 4, name: "风怒强化", icon: "⚡", desc: "所有英雄风怒率 +{value}%", maxLevel: 5, valuePerLevel: 2, getValue: (level: number) => level * 2 }, { id: 5, name: "冰冻强化", icon: "❄️", desc: "所有英雄冰冻率 +{value}%", maxLevel: 5, valuePerLevel: 2, getValue: (level: number) => level * 2 }, { id: 6, name: "穿刺强化", icon: "🗡️", desc: "所有英雄穿刺 +{value}", maxLevel: 5, valuePerLevel: 0.2, getValue: (level: number) => Number((level * 0.2).toFixed(1)) }, { id: 7, name: "护盾强化", icon: "🛡️", desc: "所有护盾效果 +{value}%", maxLevel: 5, valuePerLevel: 5, getValue: (level: number) => level * 5 }, { id: 8, name: "采购优惠", icon: "🛒", desc: "购买英雄 -{value}金", maxLevel: 5, valuePerLevel: 1, getValue: (level: number) => level * 1 }, { id: 9, name: "刷新优惠", icon: "🔄", desc: "刷新重抽 -{value}金", maxLevel: 5, valuePerLevel: 0.5, getValue: (level: number) => Number((level * 0.5).toFixed(1)) }, { id: 10, name: "出售补贴", icon: "💰", desc: "出售英雄返还 +{value}%金币", maxLevel: 5, valuePerLevel: 10, getValue: (level: number) => level * 10 } ] as TalentInfo[] };