- 将 TalentInfo 中的 `valuePerLevel` 和 `getValue` 方法替换为显式的 `values` 数组 - 将全局的 `costPerLevel` 数组替换为每个天赋独立的 `costs` 数组 - 更新 TalentsComp 逻辑以使用新的配置结构
105 lines
3.2 KiB
TypeScript
105 lines
3.2 KiB
TypeScript
/**
|
||
* @file TalentSet.ts
|
||
* @description 天赋系统配置数据,包含经验要求、消耗、每个天赋的具体加成数值和描述。
|
||
*/
|
||
|
||
export interface TalentInfo {
|
||
/** 天赋 ID */
|
||
id: number;
|
||
/** 天赋名称 */
|
||
name: string;
|
||
/** 天赋图标或标识(可选) */
|
||
icon?: string;
|
||
/** 描述模板,使用 {value} 替换具体数值 */
|
||
desc: string;
|
||
/** 最大等级 */
|
||
maxLevel: number;
|
||
/** 每一级的加成数值,从第1级到最大级 */
|
||
values: number[];
|
||
/** 升到每一级所需的消耗点数,从第1级到最大级 */
|
||
costs: number[];
|
||
}
|
||
|
||
export const TalentConfig = {
|
||
// 玩家升级所需经验配置
|
||
expRequirements: [
|
||
{ maxLevel: 10, expPerLevel: 100 },
|
||
{ maxLevel: 20, expPerLevel: 150 },
|
||
{ maxLevel: 30, expPerLevel: 200 }
|
||
],
|
||
|
||
// 天赋列表
|
||
talents: [
|
||
{
|
||
id: 1, name: "攻击强化", icon: "⚔️",
|
||
desc: "所有英雄 ATK +{value}%",
|
||
maxLevel: 5,
|
||
values: [3, 6, 9, 12, 15],
|
||
costs: [1, 1, 2, 2, 3]
|
||
},
|
||
{
|
||
id: 2, name: "生命强化", icon: "❤️",
|
||
desc: "所有英雄 HP +{value}%",
|
||
maxLevel: 5,
|
||
values: [5, 10, 15, 20, 25],
|
||
costs: [1, 1, 2, 2, 3]
|
||
},
|
||
{
|
||
id: 3, name: "暴击强化", icon: "🔥",
|
||
desc: "所有英雄暴击率 +{value}%",
|
||
maxLevel: 5,
|
||
values: [2, 4, 6, 8, 10],
|
||
costs: [1, 1, 2, 2, 3]
|
||
},
|
||
{
|
||
id: 4, name: "风怒强化", icon: "⚡",
|
||
desc: "所有英雄风怒率 +{value}%",
|
||
maxLevel: 5,
|
||
values: [2, 4, 6, 8, 10],
|
||
costs: [1, 1, 2, 2, 3]
|
||
},
|
||
{
|
||
id: 5, name: "冰冻强化", icon: "❄️",
|
||
desc: "所有英雄冰冻率 +{value}%",
|
||
maxLevel: 5,
|
||
values: [2, 4, 6, 8, 10],
|
||
costs: [1, 1, 2, 2, 3]
|
||
},
|
||
{
|
||
id: 6, name: "穿刺强化", icon: "🗡️",
|
||
desc: "所有英雄穿刺 +{value}",
|
||
maxLevel: 5,
|
||
values: [0.2, 0.4, 0.6, 0.8, 1.0],
|
||
costs: [1, 1, 2, 2, 3]
|
||
},
|
||
{
|
||
id: 7, name: "护盾强化", icon: "🛡️",
|
||
desc: "所有护盾效果 +{value}%",
|
||
maxLevel: 5,
|
||
values: [5, 10, 15, 20, 25],
|
||
costs: [1, 1, 2, 2, 3]
|
||
},
|
||
{
|
||
id: 8, name: "采购优惠", icon: "🛒",
|
||
desc: "购买英雄 -{value}金",
|
||
maxLevel: 5,
|
||
values: [1, 2, 3, 4, 5],
|
||
costs: [1, 1, 2, 2, 3]
|
||
},
|
||
{
|
||
id: 9, name: "刷新优惠", icon: "🔄",
|
||
desc: "刷新重抽 -{value}金",
|
||
maxLevel: 5,
|
||
values: [0.5, 1.0, 1.5, 2.0, 2.5],
|
||
costs: [1, 1, 2, 2, 3]
|
||
},
|
||
{
|
||
id: 10, name: "出售补贴", icon: "💰",
|
||
desc: "出售英雄返还 +{value}%金币",
|
||
maxLevel: 5,
|
||
values: [10, 20, 30, 40, 50],
|
||
costs: [1, 1, 2, 2, 3]
|
||
}
|
||
] as TalentInfo[]
|
||
};
|