refactor: 重构英雄养成与卡牌系统,移除旧合成机制
1. 移除三合一英雄合成与链式合成逻辑,统一使用升级卡进行英雄等级提升 2. 重构卡池系统:移除卡池等级机制,所有英雄卡牌统一为LV1 3. 重构升级逻辑:改为按UUID精确升级场上英雄,动态生成对应升级卡 4. 更新配置常量:拆分并重构成长倍率、英雄上限等战斗配置 5. 简化抽卡逻辑:不再按卡池等级分发卡牌,改为动态混合基础卡与升级卡 6. 清理废弃代码:移除卡池升级相关的UI、逻辑与配置
This commit is contained in:
@@ -47,28 +47,32 @@ export enum CardSkillType {
|
||||
HeroCall = 6, // 场上己方英雄召唤上场时触发
|
||||
}
|
||||
|
||||
/** 卡池等级定义 */
|
||||
export enum CardLV {
|
||||
LV1 = 1,
|
||||
LV2 = 2,
|
||||
LV3 = 3,
|
||||
LV4 = 4,
|
||||
LV5 = 5,
|
||||
}
|
||||
|
||||
/**
|
||||
* 卡牌技能触发类型
|
||||
* - 命名对齐英雄侧 SkillTriggerType,便于跨模块认知统一
|
||||
* - 枚举值从 1 开始,避免 0 的 falsy 坑(if (trigger_type) 判断出错)
|
||||
*/
|
||||
export enum CardTriggerType {
|
||||
Instant = 1, // 即时触发:使用后立即生效一次
|
||||
Interval = 2, // 定时循环:战斗中按 t_inv 间隔重复触发
|
||||
Field = 3, // 驻场光环:被动生效(仅显式分类,仍由 field 字段驱动)
|
||||
Instant = 1, // 即时触发:使用后立即生效一次
|
||||
Interval = 2, // 定时循环:战斗中按 t_inv 间隔重复触发
|
||||
Field = 3, // 驻场光环:被动生效(仅显式分类,仍由 field 字段驱动)
|
||||
FightStart = 4, // 战斗开始时触发
|
||||
FightEnd = 5, // 战斗结束时触发(每波结束)
|
||||
HeroDead = 6, // 场上己方英雄死亡时触发
|
||||
HeroCall = 7, // 英雄上场时触发(主角召唤 + 技能召唤 + 复活)
|
||||
FightEnd = 5, // 战斗结束时触发(每波结束)
|
||||
HeroDead = 6, // 场上己方英雄死亡时触发
|
||||
HeroCall = 7, // 英雄上场时触发(主角召唤 + 技能召唤 + 复活)
|
||||
}
|
||||
|
||||
/**
|
||||
* 卡池等级占位枚举(已废弃分层语义)。
|
||||
* 新机制下所有英雄卡均属 LV1,不再使用卡池升级。
|
||||
* 保留枚举仅为兼容历史代码引用。
|
||||
*/
|
||||
export enum CardLV {
|
||||
LV1 = 1,
|
||||
LV2 = 2,
|
||||
LV3 = 3,
|
||||
LV4 = 4,
|
||||
LV5 = 5,
|
||||
}
|
||||
|
||||
/** 通用卡牌配置 */
|
||||
@@ -104,7 +108,16 @@ export interface CardConfig {
|
||||
* 注意:与 t_times 语义不同——t_times 控制每波内 Interval 的次数
|
||||
*/
|
||||
trigger_limit?: number;
|
||||
|
||||
/**
|
||||
* 动态升级卡专属:目标英雄 UUID。
|
||||
* 仅当 type === CardType.SpecialUpgrade 且该卡由 buildDrawCards 动态生成时使用。
|
||||
* 使用该卡时精确升级场上对应 UUID 的英雄。
|
||||
*/
|
||||
target_hero_uuid?: number;
|
||||
}
|
||||
|
||||
/** 升级卡折扣表(已废弃,保留以兼容历史引用) */
|
||||
export const CardsUpSet: Record<number, number> = {
|
||||
1: 50,
|
||||
2: 100,
|
||||
@@ -113,70 +126,43 @@ export const CardsUpSet: Record<number, number> = {
|
||||
5: 250,
|
||||
}
|
||||
|
||||
/** 卡池升级每波减免金额 */
|
||||
/** 卡池升级每波减免金额(已废弃,保留以兼容历史引用) */
|
||||
export const CARD_POOL_UPGRADE_DISCOUNT_PER_WAVE = 10
|
||||
/** 卡池默认初始等级 */
|
||||
/** 卡池默认初始等级(已废弃,所有卡牌统一 LV1) */
|
||||
export const CARD_POOL_INIT_LEVEL = CardLV.LV1
|
||||
/** 卡池等级上限(统一由 FightSet.MAX_CARD_POOL_LEVEL 设定,保持单一数据源) */
|
||||
export const CARD_POOL_MAX_LEVEL = FightSet.MAX_CARD_POOL_LEVEL as unknown as CardLV
|
||||
/** 英雄最高等级限制 */
|
||||
/** 卡池等级上限(已废弃,所有卡牌统一 LV1) */
|
||||
export const CARD_POOL_MAX_LEVEL = CardLV.LV1
|
||||
/** 英雄最高等级限制(已废弃,统一由 FightSet.HERO_MAX_LV 控制) */
|
||||
export const CARD_HERO_MAX_LEVEL = 1
|
||||
/** 基础卡池(英雄、技能、功能) */
|
||||
|
||||
/** 基础卡池(英雄、技能、功能) */
|
||||
export const CardPoolList: CardConfig[] = [];
|
||||
|
||||
// 动态生成英雄卡池
|
||||
// 动态生成英雄卡池:所有英雄统一生成 lv1 卡牌
|
||||
HeroList.forEach(uuid => {
|
||||
const hero = HeroInfo[uuid];
|
||||
if (!hero) return;
|
||||
|
||||
const basePoolLv = hero.pool_lv || 1;
|
||||
const baseHeroLv = hero.lv || 1;
|
||||
const baseCost = FightSet.BASE_COST;
|
||||
const baseWeight = 25;
|
||||
|
||||
// 生成从 basePoolLv 到 CARD_POOL_MAX_LEVEL 的卡牌
|
||||
for (let pLv = basePoolLv; pLv <= CARD_POOL_MAX_LEVEL; pLv++) {
|
||||
const offset = pLv - basePoolLv;
|
||||
const targetHeroLv = baseHeroLv + offset;
|
||||
|
||||
// 【修改开始】永远只刷 lv1 等级的英雄卡牌,不再出现某英雄的 lv2 等级卡牌
|
||||
// 设置为 true 则开启该限制。保留原有代码逻辑以便后续有变直接引用。
|
||||
const ONLY_SPAWN_LV1_HERO = true;
|
||||
if (ONLY_SPAWN_LV1_HERO && targetHeroLv > 1) {
|
||||
break;
|
||||
}
|
||||
// 【修改结束】
|
||||
|
||||
// 英雄的最高等级 是MERGE_MAX-1
|
||||
if (targetHeroLv > FightSet.MERGE_MAX - 1) {
|
||||
break;
|
||||
}
|
||||
|
||||
// cost = baseCost * 3^(lv-1): Lv1=5, Lv2=15, Lv3=45
|
||||
let cost = baseCost;
|
||||
if (targetHeroLv > 1) {
|
||||
cost = baseCost * Math.pow(FightSet.MERGE_NEED, targetHeroLv - 1);
|
||||
}
|
||||
|
||||
CardPoolList.push({
|
||||
uuid: hero.uuid,
|
||||
type: CardType.Hero,
|
||||
cost: cost,
|
||||
weight: baseWeight,
|
||||
pool_lv: pLv as CardLV,
|
||||
kind: CKind.Hero,
|
||||
hero_lv: targetHeroLv,
|
||||
base_pool_lv: basePoolLv
|
||||
});
|
||||
}
|
||||
CardPoolList.push({
|
||||
uuid: hero.uuid,
|
||||
type: CardType.Hero,
|
||||
cost: baseCost,
|
||||
weight: baseWeight,
|
||||
pool_lv: CardLV.LV1,
|
||||
kind: CKind.Hero,
|
||||
hero_lv: 1,
|
||||
base_pool_lv: 1,
|
||||
});
|
||||
});
|
||||
|
||||
// 添加非英雄卡牌 (技能、功能卡)
|
||||
// 体系:wave 由 SKILL_CARD_WAVES 统一配置,每档强度递增(Field 靠 field uuid 区分数值,Interval 靠 overrides 覆写)
|
||||
// wave→pool_lv 映射由 SKILL_CARD_WAVES 索引+1 自动生成(wave 1→lv1, wave 5→lv2, wave 8→lv3)
|
||||
const waveToPoolLv: Record<number, number> = {};
|
||||
SKILL_CARD_WAVES.forEach((w, i) => { waveToPoolLv[w] = i + 1; });
|
||||
// wave→card_lv 映射由 SKILL_CARD_WAVES 索引+1 自动生成(wave 1→lv1, wave 5→lv2, wave 8→lv3)
|
||||
const waveToCardLv: Record<number, number> = {};
|
||||
SKILL_CARD_WAVES.forEach((w, i) => { waveToCardLv[w] = i + 1; });
|
||||
|
||||
const SkillCardData: any[] = [
|
||||
// ==================== wave 1 档(基础强度) ====================
|
||||
@@ -214,7 +200,7 @@ const SkillCardData: any[] = [
|
||||
{ uuid: 8265, skill: 6205, wave: SKILL_CARD_WAVES[1], name: "风墙+", info: "召唤风墙困住敌人,有概率击晕", is_inst: false, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 150 } },
|
||||
{ uuid: 8266, skill: 6206, wave: SKILL_CARD_WAVES[1], name: "陨石术+", info: "召唤陨石范围攻击敌人,有概率击晕", is_inst: false, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 150 } },
|
||||
|
||||
|
||||
|
||||
{ uuid: 8760, skill: 0, wave: SKILL_CARD_WAVES[1], name: "金币收益+", info: "每回合金币收益+2", is_inst: false, keep_waves: -1, field: [7210], trigger_type: CardTriggerType.Field },
|
||||
{ uuid: 8761, skill: 0, wave: SKILL_CARD_WAVES[1], name: "购买优惠+", info: "购买卡牌费用-2金币", is_inst: false, keep_waves: -1, field: [7212], trigger_type: CardTriggerType.Field },
|
||||
{ uuid: 8762, skill: 0, wave: SKILL_CARD_WAVES[1], name: "刷新优惠", info: "刷新卡牌费用-1金币", is_inst: false, keep_waves: -1, field: [7213], trigger_type: CardTriggerType.Field },
|
||||
@@ -239,7 +225,7 @@ const SkillCardData: any[] = [
|
||||
{ uuid: 8365, skill: 6205, wave: SKILL_CARD_WAVES[2], name: "风墙++", info: "召唤风墙困住敌人,有概率击晕", is_inst: false, t_inv: 4, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 250 } },
|
||||
{ uuid: 8366, skill: 6206, wave: SKILL_CARD_WAVES[2], name: "陨石术++", info: "召唤陨石范围攻击敌人,有概率击晕", is_inst: false, t_inv: 4, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 250 } },
|
||||
|
||||
|
||||
|
||||
{ uuid: 8810, skill: 0, wave: SKILL_CARD_WAVES[2], name: "金币收益++", info: "每回合金币收益+3", is_inst: false, keep_waves: -1, field: [7410], trigger_type: CardTriggerType.Field },
|
||||
|
||||
{ uuid: 8811, skill: 0, wave: SKILL_CARD_WAVES[2], name: "召唤强化++", info: "召唤触发技能次数+1", is_inst: false, keep_waves: -1, field: [7014], trigger_type: CardTriggerType.Field },
|
||||
@@ -252,27 +238,28 @@ const SkillCardData: any[] = [
|
||||
];
|
||||
|
||||
SkillCardData.forEach(data => {
|
||||
const cardLv = waveToCardLv[data.wave] ?? 1;
|
||||
CardPoolList.push({
|
||||
uuid: data.uuid,
|
||||
skill: data.skill || undefined,
|
||||
type: CardType.Skill,
|
||||
cost: 0,
|
||||
weight: 10,
|
||||
pool_lv: waveToPoolLv[data.wave] as CardLV,
|
||||
pool_lv: CardLV.LV1,
|
||||
wave: data.wave,
|
||||
kind: CKind.Skill,
|
||||
card_lv: waveToPoolLv[data.wave], // wave 1→1, 5→2, 8→3
|
||||
card_lv: cardLv,
|
||||
name: data.name,
|
||||
info: data.info,
|
||||
icon: data.icon, // 【新增】透传自定义图标ID(优先级最高)
|
||||
icon: data.icon,
|
||||
is_inst: data.is_inst,
|
||||
t_times: data.t_times || (data.is_inst ? 1 : 999),
|
||||
t_inv: data.t_inv || 0,
|
||||
keep_waves: data.keep_waves,
|
||||
field: data.field,
|
||||
overrides: data.overrides, // 【修复】原遗漏
|
||||
trigger_type: data.trigger_type, // 【新增】显式触发类型
|
||||
trigger_limit: data.trigger_limit, // 【新增】事件型触发次数上限
|
||||
overrides: data.overrides,
|
||||
trigger_type: data.trigger_type,
|
||||
trigger_limit: data.trigger_limit,
|
||||
});
|
||||
});
|
||||
|
||||
@@ -283,11 +270,13 @@ export enum SpecialRefreshHeroType {
|
||||
Ranged = 2,
|
||||
}
|
||||
|
||||
/** 升级功能卡完整配置 */
|
||||
/** 升级功能卡完整配置(作为动态升级卡的基础模板) */
|
||||
export interface SpecialUpgradeCardConfig extends CardConfig {
|
||||
name: string
|
||||
info: string
|
||||
/** 模板字段:currentLv=0 表示动态卡(实际值由 target_hero_uuid 对应的英雄决定) */
|
||||
currentLv: number
|
||||
/** 模板字段:targetLv=0 表示"+1 级"(实际目标等级 = 当前等级 + 1) */
|
||||
targetLv: number
|
||||
}
|
||||
|
||||
@@ -299,18 +288,16 @@ export interface SpecialRefreshCardConfig extends CardConfig {
|
||||
refreshHeroType: SpecialRefreshHeroType
|
||||
}
|
||||
|
||||
/** 功能卡定义表 */
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 升级卡模板。
|
||||
* 仅有 7001 一条记录,作为动态升级卡的基础配置(cost/weight/name/info)。
|
||||
* 实际使用时由 MissionCardComp.buildDrawCards 根据场上英雄动态生成 CardConfig,
|
||||
* 通过 target_hero_uuid 字段绑定具体英雄。
|
||||
*/
|
||||
export const SpecialUpgradeCardList: Record<number, SpecialUpgradeCardConfig> = {
|
||||
7001: {
|
||||
uuid: 7001, type: CardType.SpecialUpgrade, cost: 10, weight: 16, pool_lv: CardLV.LV1, kind: CKind.Card, name: t("scard_name_7001"), info: t("scard_info_7001"),
|
||||
currentLv: 1, targetLv: 2,
|
||||
},
|
||||
7002: {
|
||||
uuid: 7002, type: CardType.SpecialUpgrade, cost: 28, weight: 14, pool_lv: CardLV.LV2, kind: CKind.Card, name: t("scard_name_7002"), info: t("scard_info_7002"),
|
||||
currentLv: 2, targetLv: 3,
|
||||
uuid: 7001, type: CardType.SpecialUpgrade, cost: 10, weight: 18, pool_lv: CardLV.LV1, kind: CKind.Card, name: t("scard_name_7001"), info: t("scard_info_7001"),
|
||||
currentLv: 0, targetLv: 0,
|
||||
},
|
||||
}
|
||||
|
||||
@@ -324,19 +311,15 @@ export const SpecialRefreshCardList: Record<number, SpecialRefreshCardConfig> =
|
||||
refreshLv: 0, refreshHeroType: SpecialRefreshHeroType.Ranged,
|
||||
},
|
||||
7103: {
|
||||
uuid: 7103, type: CardType.SpecialRefresh, cost: 4, weight: 12, pool_lv: CardLV.LV2, kind: CKind.Card, name: t("scard_name_7103"), info: t("scard_info_7103"),
|
||||
refreshLv: 3, refreshHeroType: SpecialRefreshHeroType.Any,
|
||||
uuid: 7103, type: CardType.SpecialRefresh, cost: 4, weight: 12, pool_lv: CardLV.LV1, kind: CKind.Card, name: t("scard_name_7103"), info: t("scard_info_7103"),
|
||||
refreshLv: 0, refreshHeroType: SpecialRefreshHeroType.Any,
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
|
||||
/** 规范等级到合法区间 [LV1, LV6] */
|
||||
/** 规范等级到合法区间(保留以兼容历史调用,新机制下统一返回 LV1) */
|
||||
const clampCardLv = (lv: number): CardLV => {
|
||||
const value = Math.floor(lv)
|
||||
if (value < CARD_POOL_INIT_LEVEL) return CARD_POOL_INIT_LEVEL
|
||||
if (value > CARD_POOL_MAX_LEVEL) return CARD_POOL_MAX_LEVEL
|
||||
return value as CardLV
|
||||
return CardLV.LV1;
|
||||
}
|
||||
|
||||
/** 单次按权重抽取一张卡 */
|
||||
@@ -368,13 +351,13 @@ const pickCards = (cards: CardConfig[], count: number, unique: boolean = false):
|
||||
return selected
|
||||
}
|
||||
|
||||
/** 获取指定等级可出现的基础卡池 */
|
||||
/**
|
||||
* 获取基础卡池(已废弃 lv 参数,新机制下返回完整卡池)。
|
||||
* @param lv 历史遗留参数,不再生效
|
||||
* @param onlyCurrentLv 历史遗留参数,不再生效
|
||||
*/
|
||||
export const getCardPoolByLv = (lv: number, onlyCurrentLv: boolean = false): CardConfig[] => {
|
||||
const cardLv = clampCardLv(lv)
|
||||
if (onlyCurrentLv) {
|
||||
return CardPoolList.filter(card => card.pool_lv === cardLv)
|
||||
}
|
||||
return CardPoolList.filter(card => card.pool_lv <= cardLv)
|
||||
return CardPoolList;
|
||||
}
|
||||
|
||||
const normalizeTypeFilter = (type: CardType | CardType[]): Set<CardType> => {
|
||||
@@ -382,7 +365,12 @@ const normalizeTypeFilter = (type: CardType | CardType[]): Set<CardType> => {
|
||||
return new Set<CardType>(list)
|
||||
}
|
||||
|
||||
/** 常规发牌:前 3 英雄 + 后 1 其他;支持按类型和等级模式过滤 */
|
||||
/**
|
||||
* 常规发牌:前 3 英雄 + 后 1 其他;支持按类型过滤。
|
||||
* @param lv 历史遗留参数,不再生效
|
||||
* @param type 限定卡牌类型
|
||||
* @param onlyCurrentLv 历史遗留参数,不再生效
|
||||
*/
|
||||
export const getCardsByLv = (
|
||||
lv: number,
|
||||
type?: CardType | CardType[],
|
||||
@@ -401,6 +389,9 @@ export const getCardsByLv = (
|
||||
return [...heroes, ...others]
|
||||
}
|
||||
|
||||
/**
|
||||
* 通用按规则抽卡(已废弃 lv/targetPoolLv/onlyCurrentLv 参数,仅为兼容保留)。
|
||||
*/
|
||||
export const drawCardsByRule = (
|
||||
lv: number,
|
||||
options: {
|
||||
@@ -415,30 +406,11 @@ export const drawCardsByRule = (
|
||||
} = {}
|
||||
): CardConfig[] => {
|
||||
const count = Math.max(0, Math.floor(options.count ?? 4))
|
||||
const onlyCurrentLv = options.onlyCurrentLv ?? false
|
||||
let pool = getCardPoolByLv(lv, onlyCurrentLv)
|
||||
let pool = getCardPoolByLv(lv, options.onlyCurrentLv ?? false)
|
||||
if (options.type !== undefined) {
|
||||
const typeSet = normalizeTypeFilter(options.type)
|
||||
pool = pool.filter(card => typeSet.has(card.type))
|
||||
}
|
||||
if (options.targetPoolLv !== undefined) {
|
||||
// 如果指定了目标卡池等级,则强制从所有配置中筛选该等级的卡牌,无视当前的卡池等级限制
|
||||
pool = CardPoolList.filter(card => card.pool_lv === options.targetPoolLv)
|
||||
if (options.type !== undefined) {
|
||||
const typeSet = normalizeTypeFilter(options.type)
|
||||
pool = pool.filter(card => typeSet.has(card.type))
|
||||
}
|
||||
|
||||
// 如果强制筛选后池子为空(比如开启了 ONLY_SPAWN_LV1_HERO 导致没有高等级英雄卡),
|
||||
// 且需要抽取英雄,则兜底降级回 pool_lv 为 1 的卡池,保证系统不会卡死
|
||||
if (pool.length === 0) {
|
||||
pool = CardPoolList.filter(card => card.pool_lv === 1);
|
||||
if (options.type !== undefined) {
|
||||
const typeSet = normalizeTypeFilter(options.type)
|
||||
pool = pool.filter(card => typeSet.has(card.type))
|
||||
}
|
||||
}
|
||||
}
|
||||
if (options.heroType !== undefined || options.heroLv !== undefined) {
|
||||
pool = pool.filter(card => {
|
||||
if (card.type !== CardType.Hero) return false
|
||||
@@ -454,7 +426,6 @@ export const drawCardsByRule = (
|
||||
if (options.wave !== undefined) {
|
||||
pool = pool.filter(card => {
|
||||
if (card.type === CardType.Skill) {
|
||||
// 只有 wave 值严格等于当前 wave 的技能卡才会留在池中
|
||||
return card.wave === options.wave;
|
||||
}
|
||||
return true;
|
||||
|
||||
@@ -27,9 +27,11 @@ export enum FightSet {
|
||||
CRIT_DAMAGE = 50,//暴击伤害
|
||||
MORE_RC = 10,//更多次数 广告获取的次数
|
||||
HEARTPOS = -320,//基地位置
|
||||
HERO_MAX_NUM = 6,//英雄最大数量
|
||||
MERGE_MAX = 2, //英雄最大等级
|
||||
MERGE_NEED = 3, //英雄升级需要的英雄数
|
||||
HERO_MAX_NUM = 3,//英雄最大数量
|
||||
/** 英雄可升级到的最高等级(通过升级卡提升) */
|
||||
HERO_MAX_LV = 6,
|
||||
/** 英雄属性随等级成长的倍率(ap/hp = base * MULTIPLIER^(lv-1)) */
|
||||
HERO_LV_MULTIPLIER = 3,
|
||||
// BACK_RANG=30,//后退范围
|
||||
BACK_RANG = 30,//后退范围
|
||||
FiIGHT_TIME = 30,//战斗时间
|
||||
@@ -45,20 +47,8 @@ export enum FightSet {
|
||||
REFRESH_COST = 2,
|
||||
BASE_COST = 5,
|
||||
INIT_COIN = 7, // 初始金币数
|
||||
// 刷新成本
|
||||
/** 卡池等级上限(对应 CardLV 最大值) */
|
||||
MAX_CARD_POOL_LEVEL = 5,
|
||||
}
|
||||
|
||||
/**
|
||||
* 卡池升级波次配置(单一数据源)。
|
||||
* 索引 i 对应目标等级 = i + 2,即:
|
||||
* - 第 1 个波次 → 升至 LV2
|
||||
* - 第 2 个波次 → 升至 LV3
|
||||
* - 依此类推,上限为 FightSet.MAX_CARD_POOL_LEVEL
|
||||
*/
|
||||
export const CARD_POOL_UPGRADE_WAVES: number[] = [4, 7, 10, 13];
|
||||
|
||||
/**
|
||||
* 技能卡牌出现的波次配置(单一数据源)。
|
||||
* 数组索引 i 对应卡牌档位 card_lv = i + 1:
|
||||
|
||||
@@ -3,37 +3,37 @@ import { BoxSet, FacSet } from "./GameSet"
|
||||
import { SkillOverrides, TGroup } from "./SkillSet"
|
||||
|
||||
export enum HType {
|
||||
Melee = 0,
|
||||
Mid = 1,
|
||||
Long = 2,
|
||||
Melee = 0,
|
||||
Mid = 1,
|
||||
Long = 2,
|
||||
}
|
||||
|
||||
export const HTypeName ={
|
||||
0:"近战",
|
||||
1:"中程",
|
||||
2:"远程",
|
||||
export const HTypeName = {
|
||||
0: "近战",
|
||||
1: "中程",
|
||||
2: "远程",
|
||||
}
|
||||
|
||||
export enum MonType {
|
||||
Melee = 0,
|
||||
Heavy = 1,
|
||||
Long = 2,
|
||||
Support = 3,
|
||||
Summoner = 5,
|
||||
Assassin = 6,
|
||||
MeleeBoss = 8,
|
||||
LongBoss = 9,
|
||||
Melee = 0,
|
||||
Heavy = 1,
|
||||
Long = 2,
|
||||
Support = 3,
|
||||
Summoner = 5,
|
||||
Assassin = 6,
|
||||
MeleeBoss = 8,
|
||||
LongBoss = 9,
|
||||
}
|
||||
|
||||
export const MonTypeName: Record<number, string> = {
|
||||
[MonType.Melee]: "近战",
|
||||
[MonType.Heavy]: "重型",
|
||||
[MonType.Long]: "远程",
|
||||
[MonType.Support]: "辅助",
|
||||
[MonType.Summoner]: "召唤师",
|
||||
[MonType.Assassin]: "刺客",
|
||||
[MonType.Melee]: "近战",
|
||||
[MonType.Heavy]: "重型",
|
||||
[MonType.Long]: "远程",
|
||||
[MonType.Support]: "辅助",
|
||||
[MonType.Summoner]: "召唤师",
|
||||
[MonType.Assassin]: "刺客",
|
||||
[MonType.MeleeBoss]: "近战Boss",
|
||||
[MonType.LongBoss]: "远程Boss",
|
||||
[MonType.LongBoss]: "远程Boss",
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -43,38 +43,38 @@ export const MonTypeName: Record<number, string> = {
|
||||
*/
|
||||
export enum AtkSpeedLv {
|
||||
VeryFast1 = 1, VeryFast2 = 2, VeryFast3 = 3,
|
||||
Fast1 = 4, Fast2 = 5, Fast3 = 6,
|
||||
Normal1 = 7, Normal2 = 8, Normal3 = 9,
|
||||
Mid1 = 10, Mid2 = 11, Mid3 = 12,
|
||||
Slow1 = 13, Slow2 = 14, Slow3 = 15,
|
||||
VerySlow1 = 16,VerySlow2 = 17,VerySlow3 = 18,
|
||||
Fast1 = 4, Fast2 = 5, Fast3 = 6,
|
||||
Normal1 = 7, Normal2 = 8, Normal3 = 9,
|
||||
Mid1 = 10, Mid2 = 11, Mid3 = 12,
|
||||
Slow1 = 13, Slow2 = 14, Slow3 = 15,
|
||||
VerySlow1 = 16, VerySlow2 = 17, VerySlow3 = 18,
|
||||
}
|
||||
|
||||
export const AtkSpeedSet = {
|
||||
[AtkSpeedLv.VeryFast1]: { name: "极速++", cd: 0.15 },
|
||||
[AtkSpeedLv.VeryFast2]: { name: "极速+", cd: 0.20 },
|
||||
[AtkSpeedLv.VeryFast1]: { name: "极速++", cd: 0.15 },
|
||||
[AtkSpeedLv.VeryFast2]: { name: "极速+", cd: 0.20 },
|
||||
[AtkSpeedLv.VeryFast3]: { name: "极速", cd: 0.30 },
|
||||
[AtkSpeedLv.Fast1]: { name: "快速++", cd: 0.40 },
|
||||
[AtkSpeedLv.Fast2]: { name: "快速+", cd: 0.50 },
|
||||
[AtkSpeedLv.Fast3]: { name: "快速", cd: 0.70 },
|
||||
[AtkSpeedLv.Normal1]: { name: "中速++", cd: 0.80 },
|
||||
[AtkSpeedLv.Normal2]: { name: "中速+", cd: 0.90 },
|
||||
[AtkSpeedLv.Normal3]: { name: "中速", cd: 1.00 },
|
||||
[AtkSpeedLv.Mid1]: { name: "一般+", cd: 1.10 },
|
||||
[AtkSpeedLv.Mid2]: { name: "一般", cd: 1.20 },
|
||||
[AtkSpeedLv.Mid3]: { name: "一般-", cd: 1.30 },
|
||||
[AtkSpeedLv.Slow1]: { name: "慢", cd: 1.50 },
|
||||
[AtkSpeedLv.Slow2]: { name: "慢+", cd: 1.60 },
|
||||
[AtkSpeedLv.Slow3]: { name: "慢++", cd: 1.80 },
|
||||
[AtkSpeedLv.VerySlow1]: { name: "很慢", cd: 2.30 },
|
||||
[AtkSpeedLv.VerySlow2]: { name: "很慢+", cd: 2.50 },
|
||||
[AtkSpeedLv.Fast1]: { name: "快速++", cd: 0.40 },
|
||||
[AtkSpeedLv.Fast2]: { name: "快速+", cd: 0.50 },
|
||||
[AtkSpeedLv.Fast3]: { name: "快速", cd: 0.70 },
|
||||
[AtkSpeedLv.Normal1]: { name: "中速++", cd: 0.80 },
|
||||
[AtkSpeedLv.Normal2]: { name: "中速+", cd: 0.90 },
|
||||
[AtkSpeedLv.Normal3]: { name: "中速", cd: 1.00 },
|
||||
[AtkSpeedLv.Mid1]: { name: "一般+", cd: 1.10 },
|
||||
[AtkSpeedLv.Mid2]: { name: "一般", cd: 1.20 },
|
||||
[AtkSpeedLv.Mid3]: { name: "一般-", cd: 1.30 },
|
||||
[AtkSpeedLv.Slow1]: { name: "慢", cd: 1.50 },
|
||||
[AtkSpeedLv.Slow2]: { name: "慢+", cd: 1.60 },
|
||||
[AtkSpeedLv.Slow3]: { name: "慢++", cd: 1.80 },
|
||||
[AtkSpeedLv.VerySlow1]: { name: "很慢", cd: 2.30 },
|
||||
[AtkSpeedLv.VerySlow2]: { name: "很慢+", cd: 2.50 },
|
||||
[AtkSpeedLv.VerySlow3]: { name: "很慢++", cd: 2.80 },
|
||||
};
|
||||
|
||||
export const HeroPos={
|
||||
0:{pos:v3(-320,BoxSet.GAME_LINE,0)},
|
||||
1:{pos:v3(0,BoxSet.GAME_LINE,0)},
|
||||
2:{pos:v3(0,BoxSet.GAME_LINE,0)},
|
||||
export const HeroPos = {
|
||||
0: { pos: v3(-320, BoxSet.GAME_LINE, 0) },
|
||||
1: { pos: v3(0, BoxSet.GAME_LINE, 0) },
|
||||
2: { pos: v3(0, BoxSet.GAME_LINE, 0) },
|
||||
}
|
||||
|
||||
export const FormationPointX = {
|
||||
@@ -97,12 +97,12 @@ export const resolveFormationTargetX = (fac: FacSet, type: HType): number => {
|
||||
|
||||
|
||||
export enum MonStart {
|
||||
SLINE_1=140, //上线y
|
||||
SLINE_2=100, //下线y
|
||||
SLINE_3=180, //下线y
|
||||
SLINE_4=60, //y起始点
|
||||
START_X=320, //x起始点
|
||||
START_I=90, //x轴间隔
|
||||
SLINE_1 = 140, //上线y
|
||||
SLINE_2 = 100, //下线y
|
||||
SLINE_3 = 180, //下线y
|
||||
SLINE_4 = 60, //y起始点
|
||||
START_X = 320, //x起始点
|
||||
START_I = 90, //x轴间隔
|
||||
}
|
||||
|
||||
|
||||
@@ -147,41 +147,41 @@ export const SkillTriggerDesc = {
|
||||
* 英雄/怪物基础信息接口
|
||||
*/
|
||||
export interface heroInfo {
|
||||
uuid: number; // 唯一标识(英雄5000段,怪物5200段)
|
||||
name: string; // 显示名称
|
||||
icon?: string; // 图标名称(对应美术资源名)
|
||||
path: string; // 资源路径(对应美术资源名)
|
||||
fac: FacSet; // 阵营(FacSet.HERO 或 FacSet.MON)
|
||||
kind?: number; // 未使用
|
||||
lv: number; // 英雄等级
|
||||
pool_lv?: number; // 卡片等级
|
||||
type: HType; // 攻击定位(近战/中程/远程)
|
||||
monType?: MonType; // 怪物专属类型
|
||||
hp: number; // 生命值上限
|
||||
ap: number; // 攻击力
|
||||
[SkillTriggerType.Call]?:{s_uuid:number, t_num:number, overrides?: SkillOverrides}[]; // 召唤后触发的技能配置
|
||||
[SkillTriggerType.Dead]?:{s_uuid:number, t_num:number, overrides?: SkillOverrides}[]; // 死亡后触发的技能配置
|
||||
[SkillTriggerType.FStart]?:{s_uuid:number, t_num:number, overrides?: SkillOverrides}[]; // 战斗开始时释放的技能配置
|
||||
[SkillTriggerType.FEnd]?:{s_uuid:number, t_num:number, overrides?: SkillOverrides}[]; // 战斗结束时释放的技能配置
|
||||
[SkillTriggerType.Field]?:number[]; // 驻场技能uuid列表,英雄在场时对全局生效
|
||||
[SkillTriggerType.Atking]?:{s_uuid:number, t_num:number, overrides?: SkillOverrides}[]; // 普通攻击后触发的技能配置,s_uuid: 技能id, t_num: 触发所需的普攻次数
|
||||
[SkillTriggerType.Atked]?:{s_uuid:number, t_num:number, overrides?: SkillOverrides}[]; // 受击后触发的技能配置,s_uuid: 技能id, t_num: 触发所需的受击次数
|
||||
[SkillTriggerType.Revive]?:{s_uuid:number,r_num:number,upr:number}; // 复活技能配置,s_uuid: 技能id, r_num: 触发所需的复活次数, upr 等级对复活次数的影响
|
||||
dis?: number; // 攻击距离(像素)
|
||||
speed?: number; // 移动速度(像素/秒)
|
||||
skills: Record<number, HSkillInfo> ; // 携带技能ID列表
|
||||
evolve?: Record<number, HeroEvolve>; // 等级进化配置,key=等级(2,3,...)
|
||||
info: string; // 描述文案
|
||||
uuid: number; // 唯一标识(英雄5000段,怪物5200段)
|
||||
name: string; // 显示名称
|
||||
icon?: string; // 图标名称(对应美术资源名)
|
||||
path: string; // 资源路径(对应美术资源名)
|
||||
fac: FacSet; // 阵营(FacSet.HERO 或 FacSet.MON)
|
||||
kind?: number; // 未使用
|
||||
lv: number; // 英雄等级
|
||||
pool_lv?: number; // 卡片等级
|
||||
type: HType; // 攻击定位(近战/中程/远程)
|
||||
monType?: MonType; // 怪物专属类型
|
||||
hp: number; // 生命值上限
|
||||
ap: number; // 攻击力
|
||||
[SkillTriggerType.Call]?: { s_uuid: number, t_num: number, overrides?: SkillOverrides }[]; // 召唤后触发的技能配置
|
||||
[SkillTriggerType.Dead]?: { s_uuid: number, t_num: number, overrides?: SkillOverrides }[]; // 死亡后触发的技能配置
|
||||
[SkillTriggerType.FStart]?: { s_uuid: number, t_num: number, overrides?: SkillOverrides }[]; // 战斗开始时释放的技能配置
|
||||
[SkillTriggerType.FEnd]?: { s_uuid: number, t_num: number, overrides?: SkillOverrides }[]; // 战斗结束时释放的技能配置
|
||||
[SkillTriggerType.Field]?: number[]; // 驻场技能uuid列表,英雄在场时对全局生效
|
||||
[SkillTriggerType.Atking]?: { s_uuid: number, t_num: number, overrides?: SkillOverrides }[]; // 普通攻击后触发的技能配置,s_uuid: 技能id, t_num: 触发所需的普攻次数
|
||||
[SkillTriggerType.Atked]?: { s_uuid: number, t_num: number, overrides?: SkillOverrides }[]; // 受击后触发的技能配置,s_uuid: 技能id, t_num: 触发所需的受击次数
|
||||
[SkillTriggerType.Revive]?: { s_uuid: number, r_num: number, upr: number }; // 复活技能配置,s_uuid: 技能id, r_num: 触发所需的复活次数, upr 等级对复活次数的影响
|
||||
dis?: number; // 攻击距离(像素)
|
||||
speed?: number; // 移动速度(像素/秒)
|
||||
skills: Record<number, HSkillInfo>; // 携带技能ID列表
|
||||
evolve?: Record<number, HeroEvolve>; // 等级进化配置,key=等级(2,3,...)
|
||||
info: string; // 描述文案
|
||||
}
|
||||
/**
|
||||
* 技能基础信息接口
|
||||
*/
|
||||
export interface HSkillInfo {
|
||||
uuid: number; // 唯一标识(技能6000段等)
|
||||
lv:number; // 技能等级
|
||||
cd:number; // 技能cd
|
||||
ccd:number; // 占位当前cd,用于cd计时
|
||||
overrides?: SkillOverrides; // 角色专属参数覆盖
|
||||
uuid: number; // 唯一标识(技能6000段等)
|
||||
lv: number; // 技能等级
|
||||
cd: number; // 技能cd
|
||||
ccd: number; // 占位当前cd,用于cd计时
|
||||
overrides?: SkillOverrides; // 角色专属参数覆盖
|
||||
}
|
||||
/**
|
||||
* 英雄等级进化配置
|
||||
@@ -192,11 +192,11 @@ export interface HeroEvolve {
|
||||
skill?: { s_uuid: number; cd?: number; overrides?: SkillOverrides };
|
||||
/** 覆盖触发技能(完全替换该类型的触发配置) */
|
||||
atking?: { s_uuid: number; t_num: number; overrides?: SkillOverrides }[];
|
||||
atked?: { s_uuid: number; t_num: number; overrides?: SkillOverrides }[];
|
||||
dead?: { s_uuid: number; t_num: number; overrides?: SkillOverrides }[];
|
||||
fstart?: { s_uuid: number; t_num: number; overrides?: SkillOverrides }[];
|
||||
fend?: { s_uuid: number; t_num: number; overrides?: SkillOverrides }[];
|
||||
revive?: { s_uuid: number; r_num: number; upr: number };
|
||||
atked?: { s_uuid: number; t_num: number; overrides?: SkillOverrides }[];
|
||||
dead?: { s_uuid: number; t_num: number; overrides?: SkillOverrides }[];
|
||||
fstart?: { s_uuid: number; t_num: number; overrides?: SkillOverrides }[];
|
||||
fend?: { s_uuid: number; t_num: number; overrides?: SkillOverrides }[];
|
||||
revive?: { s_uuid: number; r_num: number; upr: number };
|
||||
/** 额外属性加成(在等级倍率基础上叠加) */
|
||||
ap_bonus?: number;
|
||||
hp_bonus?: number;
|
||||
@@ -221,242 +221,324 @@ export interface HeroEvolve {
|
||||
|
||||
export const HeroInfo: Record<number, heroInfo> = {
|
||||
// ========== atked 类(战士 · 自身强化) ==========
|
||||
5011:{uuid:5011,name:"小铁卫",path:"hk1", fac:FacSet.HERO,pool_lv:1,lv:1,type:HType.Melee,hp:300,ap:28,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
atked:[{s_uuid:6301,t_num:3,overrides:{TGroup:TGroup.Self,ap:4}}],
|
||||
info:"每受击3次为自身添加4层护盾"},
|
||||
5012:{uuid:5012,name:"不死小强",path:"hk2", fac:FacSet.HERO,pool_lv:2,lv:1,type:HType.Melee,hp:600,ap:57,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
atked:[{s_uuid:6302,t_num:3,overrides:{TGroup:TGroup.Self,ap:250}}],
|
||||
info:"每受击3次为自身回复攻击力250%的生命值"},
|
||||
5013:{uuid:5013,name:"铁骨头",path:"hk3", fac:FacSet.HERO,pool_lv:2,lv:1,type:HType.Melee,hp:600,ap:57,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
atked:[{s_uuid:6402,t_num:5,overrides:{TGroup:TGroup.Self,ap:100}}],
|
||||
info:"每受击5次永久提升自身最大生命值100点"},
|
||||
5014:{uuid:5014,name:"怒火武者",path:"hk4", fac:FacSet.HERO,pool_lv:3,lv:1,type:HType.Melee,hp:900,ap:85,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow1].cd,ccd:0}},
|
||||
atked:[{s_uuid:6401,t_num:3,overrides:{TGroup:TGroup.Self,ap:12}}],
|
||||
info:"每受击3次永久提升自身攻击力12点"},
|
||||
5015:{uuid:5015,name:"血刃武者",path:"hk5", fac:FacSet.HERO,pool_lv:4,lv:1,type:HType.Melee,hp:1200,ap:113,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
atked:[
|
||||
{s_uuid:6301,t_num:3,overrides:{TGroup:TGroup.Self,ap:3}},
|
||||
{s_uuid:6401,t_num:5,overrides:{TGroup:TGroup.Self,ap:15}}
|
||||
],
|
||||
info:"每受击3次加3层护盾,每受击5次永久+15攻击力"},
|
||||
5016:{uuid:5016,name:"狂血战士",path:"hc1", fac:FacSet.HERO,pool_lv:5,lv:1,type:HType.Melee,hp:1500,ap:142,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
atked:[
|
||||
{s_uuid:6401,t_num:3,overrides:{TGroup:TGroup.Self,ap:10}},
|
||||
{s_uuid:6403,t_num:5,overrides:{TGroup:TGroup.Self,ap:15}}
|
||||
],
|
||||
info:"每受击3次永久+10攻击力,每受击5次永久+15%暴击率"},
|
||||
5011: {
|
||||
uuid: 5011, name: "小铁卫", path: "hk1", fac: FacSet.HERO, pool_lv: 1, lv: 1, type: HType.Melee, hp: 300, ap: 28,
|
||||
skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Slow3].cd, ccd: 0 } },
|
||||
atked: [{ s_uuid: 6301, t_num: 3, overrides: { TGroup: TGroup.Self, ap: 4 } }],
|
||||
info: "每受击3次为自身添加4层护盾"
|
||||
},
|
||||
// 以下英雄暂时注释,保留待后续扩展
|
||||
// 5012:{uuid:5012,name:"不死小强",path:"hk2", fac:FacSet.HERO,pool_lv:2,lv:1,type:HType.Melee,hp:600,ap:57,
|
||||
// skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
// atked:[{s_uuid:6302,t_num:3,overrides:{TGroup:TGroup.Self,ap:250}}],
|
||||
// info:"每受击3次为自身回复攻击力250%的生命值"},
|
||||
// 5013:{uuid:5013,name:"铁骨头",path:"hk3", fac:FacSet.HERO,pool_lv:2,lv:1,type:HType.Melee,hp:600,ap:57,
|
||||
// skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
// atked:[{s_uuid:6402,t_num:5,overrides:{TGroup:TGroup.Self,ap:100}}],
|
||||
// info:"每受击5次永久提升自身最大生命值100点"},
|
||||
// 5014:{uuid:5014,name:"怒火武者",path:"hk4", fac:FacSet.HERO,pool_lv:3,lv:1,type:HType.Melee,hp:900,ap:85,
|
||||
// skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow1].cd,ccd:0}},
|
||||
// atked:[{s_uuid:6401,t_num:3,overrides:{TGroup:TGroup.Self,ap:12}}],
|
||||
// info:"每受击3次永久提升自身攻击力12点"},
|
||||
// 5015:{uuid:5015,name:"血刃武者",path:"hk5", fac:FacSet.HERO,pool_lv:4,lv:1,type:HType.Melee,hp:1200,ap:113,
|
||||
// skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
// atked:[
|
||||
// {s_uuid:6301,t_num:3,overrides:{TGroup:TGroup.Self,ap:3}},
|
||||
// {s_uuid:6401,t_num:5,overrides:{TGroup:TGroup.Self,ap:15}}
|
||||
// ],
|
||||
// info:"每受击3次加3层护盾,每受击5次永久+15攻击力"},
|
||||
// 5016:{uuid:5016,name:"狂血战士",path:"hc1", fac:FacSet.HERO,pool_lv:5,lv:1,type:HType.Melee,hp:1500,ap:142,
|
||||
// skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
// atked:[
|
||||
// {s_uuid:6401,t_num:3,overrides:{TGroup:TGroup.Self,ap:10}},
|
||||
// {s_uuid:6403,t_num:5,overrides:{TGroup:TGroup.Self,ap:15}}
|
||||
// ],
|
||||
// info:"每受击3次永久+10攻击力,每受击5次永久+15%暴击率"},
|
||||
|
||||
// ========== atking 类 — 刺客(自身强化) ==========
|
||||
5021:{uuid:5021,name:"小刺客",path:"hc1", fac:FacSet.HERO,pool_lv:1,lv:1,type:HType.Melee,hp:300,ap:28,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Fast2].cd,ccd:0}},
|
||||
atking:[{s_uuid:6401,t_num:5,overrides:{TGroup:TGroup.Self,ap:8}}],
|
||||
info:"每攻击5次永久提升自身攻击力8点"},
|
||||
5022:{uuid:5022,name:"嗜血剑客",path:"hc2", fac:FacSet.HERO,pool_lv:3,lv:1,type:HType.Melee,hp:900,ap:85,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Fast2].cd,ccd:0}},
|
||||
atking:[
|
||||
{s_uuid:6403,t_num:5,overrides:{TGroup:TGroup.Self,ap:10}},
|
||||
{s_uuid:6401,t_num:7,overrides:{TGroup:TGroup.Self,ap:12}}
|
||||
],
|
||||
info:"每攻击5次永久+10%暴击率,每攻击7次永久+12攻击力"},
|
||||
5023:{uuid:5023,name:"暗影杀手",path:"hc3", fac:FacSet.HERO,pool_lv:5,lv:1,type:HType.Melee,hp:1500,ap:142,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Fast1].cd,ccd:0}},
|
||||
atking:[
|
||||
{s_uuid:6403,t_num:5,overrides:{TGroup:TGroup.Self,ap:10}},
|
||||
{s_uuid:6404,t_num:7,overrides:{TGroup:TGroup.Self,ap:15}}
|
||||
],
|
||||
info:"每攻击5次永久+10%暴击率,每攻击7次永久+15%暴伤"},
|
||||
5021: {
|
||||
uuid: 5021, name: "小刺客", path: "hc1", fac: FacSet.HERO, pool_lv: 1, lv: 1, type: HType.Melee, hp: 300, ap: 28,
|
||||
skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Fast2].cd, ccd: 0 } },
|
||||
atking: [{ s_uuid: 6401, t_num: 5, overrides: { TGroup: TGroup.Self, ap: 8 } }],
|
||||
info: "每攻击5次永久提升自身攻击力8点"
|
||||
},
|
||||
// 5022: {
|
||||
// uuid: 5022, name: "嗜血剑客", path: "hc2", fac: FacSet.HERO, pool_lv: 3, lv: 1, type: HType.Melee, hp: 900, ap: 85,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Fast2].cd, ccd: 0 } },
|
||||
// atking: [
|
||||
// { s_uuid: 6403, t_num: 5, overrides: { TGroup: TGroup.Self, ap: 10 } },
|
||||
// { s_uuid: 6401, t_num: 7, overrides: { TGroup: TGroup.Self, ap: 12 } }
|
||||
// ],
|
||||
// info: "每攻击5次永久+10%暴击率,每攻击7次永久+12攻击力"
|
||||
// },
|
||||
// 5023: {
|
||||
// uuid: 5023, name: "暗影杀手", path: "hc3", fac: FacSet.HERO, pool_lv: 5, lv: 1, type: HType.Melee, hp: 1500, ap: 142,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Fast1].cd, ccd: 0 } },
|
||||
// atking: [
|
||||
// { s_uuid: 6403, t_num: 5, overrides: { TGroup: TGroup.Self, ap: 10 } },
|
||||
// { s_uuid: 6404, t_num: 7, overrides: { TGroup: TGroup.Self, ap: 15 } }
|
||||
// ],
|
||||
// info: "每攻击5次永久+10%暴击率,每攻击7次永久+15%暴伤"
|
||||
// },
|
||||
|
||||
// ========== atking 类 — 射手(队友强化,hit_count 控制目标数) ==========
|
||||
5031:{uuid:5031,name:"援护弓手",path:"ha1", fac:FacSet.HERO,pool_lv:1,lv:1,type:HType.Long,hp:143,ap:40,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Normal2].cd,ccd:0}},
|
||||
atking:[{s_uuid:6401,t_num:5,overrides:{TGroup:TGroup.Team,hit_count:1,ap:8}}],
|
||||
info:"每攻击5次为随机1名队友永久提升攻击力8点"},
|
||||
5032:{uuid:5032,name:"战术弓手",path:"ha2", fac:FacSet.HERO,pool_lv:3,lv:1,type:HType.Long,hp:430,ap:120,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Normal1].cd,ccd:0}},
|
||||
atking:[{s_uuid:6403,t_num:5,overrides:{TGroup:TGroup.Team,hit_count:3,ap:10}}],
|
||||
info:"每攻击5次为随机3名队友永久提升暴击率10%"},
|
||||
5033:{uuid:5033,name:"鹰眼弓将",path:"ha3", fac:FacSet.HERO,pool_lv:5,lv:1,type:HType.Long,hp:717,ap:200,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Fast3].cd,ccd:0}},
|
||||
atking:[
|
||||
{s_uuid:6401,t_num:5,overrides:{TGroup:TGroup.Team,hit_count:6,ap:8}},
|
||||
{s_uuid:6404,t_num:7,overrides:{TGroup:TGroup.Team,hit_count:6,ap:12}}
|
||||
],
|
||||
info:"每攻击5次为随机6名队友永久+8攻击力,每攻击7次永久+12%暴伤"},
|
||||
5031: {
|
||||
uuid: 5031, name: "援护弓手", path: "ha1", fac: FacSet.HERO, pool_lv: 1, lv: 1, type: HType.Long, hp: 143, ap: 40,
|
||||
skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Normal2].cd, ccd: 0 } },
|
||||
atking: [{ s_uuid: 6401, t_num: 5, overrides: { TGroup: TGroup.Team, hit_count: 1, ap: 8 } }],
|
||||
info: "每攻击5次为随机1名队友永久提升攻击力8点"
|
||||
},
|
||||
// 5032: {
|
||||
// uuid: 5032, name: "战术弓手", path: "ha2", fac: FacSet.HERO, pool_lv: 3, lv: 1, type: HType.Long, hp: 430, ap: 120,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Normal1].cd, ccd: 0 } },
|
||||
// atking: [{ s_uuid: 6403, t_num: 5, overrides: { TGroup: TGroup.Team, hit_count: 3, ap: 10 } }],
|
||||
// info: "每攻击5次为随机3名队友永久提升暴击率10%"
|
||||
// },
|
||||
// 5033: {
|
||||
// uuid: 5033, name: "鹰眼弓将", path: "ha3", fac: FacSet.HERO, pool_lv: 5, lv: 1, type: HType.Long, hp: 717, ap: 200,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Fast3].cd, ccd: 0 } },
|
||||
// atking: [
|
||||
// { s_uuid: 6401, t_num: 5, overrides: { TGroup: TGroup.Team, hit_count: 6, ap: 8 } },
|
||||
// { s_uuid: 6404, t_num: 7, overrides: { TGroup: TGroup.Team, hit_count: 6, ap: 12 } }
|
||||
// ],
|
||||
// info: "每攻击5次为随机6名队友永久+8攻击力,每攻击7次永久+12%暴伤"
|
||||
// },
|
||||
|
||||
// ========== dead 类(战士+刺客 · 死亡遗产) ==========
|
||||
5041:{uuid:5041,name:"殉道卫士",path:"hk1", fac:FacSet.HERO,pool_lv:1,lv:1,type:HType.Melee,hp:300,ap:28,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
dead:[{s_uuid:6301,t_num:1,overrides:{TGroup:TGroup.Team,ap:3}}],
|
||||
info:"死亡时为全队添加3层护盾"},
|
||||
5042:{uuid:5042,name:"遗志将军",path:"hk2", fac:FacSet.HERO,pool_lv:2,lv:1,type:HType.Melee,hp:600,ap:57,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
dead:[
|
||||
{s_uuid:6401,t_num:1,overrides:{TGroup:TGroup.Team,ap:20}},
|
||||
{s_uuid:6402,t_num:1,overrides:{TGroup:TGroup.Team,ap:80}}
|
||||
],
|
||||
revive:{s_uuid:6501,r_num:1,upr:0.3},
|
||||
info:"死亡时全队永久+20攻击力、+80最大生命值,死后复活一次"},
|
||||
5043:{uuid:5043,name:"亡魂刺客",path:"hc1", fac:FacSet.HERO,pool_lv:3,lv:1,type:HType.Melee,hp:900,ap:85,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Normal1].cd,ccd:0}},
|
||||
dead:[{s_uuid:6405,t_num:1,overrides:{TGroup:TGroup.Team,ap:15}}],
|
||||
info:"死亡时全队永久提升击晕概率15%"},
|
||||
5044:{uuid:5044,name:"血誓剑客",path:"hc2", fac:FacSet.HERO,pool_lv:4,lv:1,type:HType.Melee,hp:1200,ap:113,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Fast3].cd,ccd:0}},
|
||||
dead:[
|
||||
{s_uuid:6403,t_num:1,overrides:{TGroup:TGroup.Team,ap:15}},
|
||||
{s_uuid:6404,t_num:1,overrides:{TGroup:TGroup.Team,ap:20}}
|
||||
],
|
||||
info:"死亡时全队永久+15%暴击率、+20%暴伤"},
|
||||
5045:{uuid:5045,name:"不灭战魂",path:"hk3", fac:FacSet.HERO,pool_lv:5,lv:1,type:HType.Melee,hp:1500,ap:142,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow3].cd,ccd:0}},
|
||||
dead:[
|
||||
{s_uuid:6301,t_num:1,overrides:{TGroup:TGroup.Team,ap:5}},
|
||||
{s_uuid:6401,t_num:1,overrides:{TGroup:TGroup.Team,ap:30}},
|
||||
{s_uuid:6402,t_num:1,overrides:{TGroup:TGroup.Team,ap:120}}
|
||||
],
|
||||
revive:{s_uuid:6501,r_num:1,upr:0.5},
|
||||
info:"死亡时全队获得5层护盾、永久+30攻击力、永久+120最大生命值,死后复活一次"},
|
||||
// 5041: {
|
||||
// uuid: 5041, name: "殉道卫士", path: "hk1", fac: FacSet.HERO, pool_lv: 1, lv: 1, type: HType.Melee, hp: 300, ap: 28,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Slow3].cd, ccd: 0 } },
|
||||
// dead: [{ s_uuid: 6301, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 3 } }],
|
||||
// info: "死亡时为全队添加3层护盾"
|
||||
// },
|
||||
// 5042: {
|
||||
// uuid: 5042, name: "遗志将军", path: "hk2", fac: FacSet.HERO, pool_lv: 2, lv: 1, type: HType.Melee, hp: 600, ap: 57,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Slow3].cd, ccd: 0 } },
|
||||
// dead: [
|
||||
// { s_uuid: 6401, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 20 } },
|
||||
// { s_uuid: 6402, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 80 } }
|
||||
// ],
|
||||
// revive: { s_uuid: 6501, r_num: 1, upr: 0.3 },
|
||||
// info: "死亡时全队永久+20攻击力、+80最大生命值,死后复活一次"
|
||||
// },
|
||||
// 5043: {
|
||||
// uuid: 5043, name: "亡魂刺客", path: "hc1", fac: FacSet.HERO, pool_lv: 3, lv: 1, type: HType.Melee, hp: 900, ap: 85,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Normal1].cd, ccd: 0 } },
|
||||
// dead: [{ s_uuid: 6405, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 15 } }],
|
||||
// info: "死亡时全队永久提升击晕概率15%"
|
||||
// },
|
||||
// 5044: {
|
||||
// uuid: 5044, name: "血誓剑客", path: "hc2", fac: FacSet.HERO, pool_lv: 4, lv: 1, type: HType.Melee, hp: 1200, ap: 113,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Fast3].cd, ccd: 0 } },
|
||||
// dead: [
|
||||
// { s_uuid: 6403, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 15 } },
|
||||
// { s_uuid: 6404, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 20 } }
|
||||
// ],
|
||||
// info: "死亡时全队永久+15%暴击率、+20%暴伤"
|
||||
// },
|
||||
// 5045: {
|
||||
// uuid: 5045, name: "不灭战魂", path: "hk3", fac: FacSet.HERO, pool_lv: 5, lv: 1, type: HType.Melee, hp: 1500, ap: 142,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Slow3].cd, ccd: 0 } },
|
||||
// dead: [
|
||||
// { s_uuid: 6301, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 5 } },
|
||||
// { s_uuid: 6401, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 30 } },
|
||||
// { s_uuid: 6402, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 120 } }
|
||||
// ],
|
||||
// revive: { s_uuid: 6501, r_num: 1, upr: 0.5 },
|
||||
// info: "死亡时全队获得5层护盾、永久+30攻击力、永久+120最大生命值,死后复活一次"
|
||||
// },
|
||||
|
||||
// ========== fstart 类(法师 · 战前增益) ==========
|
||||
5051:{uuid:5051,name:"占卜师",path:"hm1", fac:FacSet.HERO,pool_lv:1,lv:1,type:HType.Long,hp:143,ap:40,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Mid3].cd,ccd:0}},
|
||||
fstart:[{s_uuid:6401,t_num:1,overrides:{TGroup:TGroup.Team,ap:15}}],
|
||||
info:"战斗开始时为全队永久提升攻击力15点"},
|
||||
5052:{uuid:5052,name:"护盾牧师",path:"hm2", fac:FacSet.HERO,pool_lv:2,lv:1,type:HType.Long,hp:287,ap:80,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Slow1].cd,ccd:0}},
|
||||
fstart:[{s_uuid:6301,t_num:1,overrides:{TGroup:TGroup.Team,ap:2}}],
|
||||
info:"战斗开始时为全队添加2层护盾"},
|
||||
5053:{uuid:5053,name:"血盟法师",path:"hm3", fac:FacSet.HERO,pool_lv:2,lv:1,type:HType.Long,hp:287,ap:80,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Mid2].cd,ccd:0}},
|
||||
fstart:[{s_uuid:6402,t_num:1,overrides:{TGroup:TGroup.Team,ap:100}}],
|
||||
info:"战斗开始时为全队永久提升最大生命值100点"},
|
||||
5054:{uuid:5054,name:"暴击法师",path:"hm4", fac:FacSet.HERO,pool_lv:3,lv:1,type:HType.Long,hp:430,ap:120,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Mid3].cd,ccd:0}},
|
||||
fstart:[{s_uuid:6403,t_num:1,overrides:{TGroup:TGroup.Team,ap:20}}],
|
||||
info:"战斗开始时为全队永久提升暴击率20%"},
|
||||
5055:{uuid:5055,name:"毁灭法师",path:"hm5", fac:FacSet.HERO,pool_lv:4,lv:1,type:HType.Long,hp:573,ap:160,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Mid1].cd,ccd:0}},
|
||||
fstart:[
|
||||
{s_uuid:6404,t_num:1,overrides:{TGroup:TGroup.Team,ap:25}},
|
||||
{s_uuid:6401,t_num:1,overrides:{TGroup:TGroup.Team,ap:20}}
|
||||
],
|
||||
info:"战斗开始时为全队永久+25%暴伤、+20攻击力"},
|
||||
5056:{uuid:5056,name:"预言法师",path:"hm6", fac:FacSet.HERO,pool_lv:5,lv:1,type:HType.Long,hp:717,ap:200,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Normal3].cd,ccd:0}},
|
||||
fstart:[
|
||||
{s_uuid:6405,t_num:1,overrides:{TGroup:TGroup.Team,ap:20}},
|
||||
{s_uuid:6403,t_num:1,overrides:{TGroup:TGroup.Team,ap:15}},
|
||||
{s_uuid:6404,t_num:1,overrides:{TGroup:TGroup.Team,ap:20}}
|
||||
],
|
||||
info:"战斗开始时为全队永久+20%击晕概率、+15%暴击率、+20%暴伤"},
|
||||
5051: {
|
||||
uuid: 5051, name: "占卜师", path: "hm1", fac: FacSet.HERO, pool_lv: 1, lv: 1, type: HType.Long, hp: 143, ap: 40,
|
||||
skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Mid3].cd, ccd: 0 } },
|
||||
fstart: [{ s_uuid: 6401, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 15 } }],
|
||||
info: "战斗开始时为全队永久提升攻击力15点"
|
||||
},
|
||||
// 5052: {
|
||||
// uuid: 5052, name: "护盾牧师", path: "hm2", fac: FacSet.HERO, pool_lv: 2, lv: 1, type: HType.Long, hp: 287, ap: 80,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Slow1].cd, ccd: 0 } },
|
||||
// fstart: [{ s_uuid: 6301, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 2 } }],
|
||||
// info: "战斗开始时为全队添加2层护盾"
|
||||
// },
|
||||
// 5053: {
|
||||
// uuid: 5053, name: "血盟法师", path: "hm3", fac: FacSet.HERO, pool_lv: 2, lv: 1, type: HType.Long, hp: 287, ap: 80,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Mid2].cd, ccd: 0 } },
|
||||
// fstart: [{ s_uuid: 6402, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 100 } }],
|
||||
// info: "战斗开始时为全队永久提升最大生命值100点"
|
||||
// },
|
||||
// 5054: {
|
||||
// uuid: 5054, name: "暴击法师", path: "hm4", fac: FacSet.HERO, pool_lv: 3, lv: 1, type: HType.Long, hp: 430, ap: 120,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Mid3].cd, ccd: 0 } },
|
||||
// fstart: [{ s_uuid: 6403, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 20 } }],
|
||||
// info: "战斗开始时为全队永久提升暴击率20%"
|
||||
// },
|
||||
// 5055: {
|
||||
// uuid: 5055, name: "毁灭法师", path: "hm5", fac: FacSet.HERO, pool_lv: 4, lv: 1, type: HType.Long, hp: 573, ap: 160,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Mid1].cd, ccd: 0 } },
|
||||
// fstart: [
|
||||
// { s_uuid: 6404, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 25 } },
|
||||
// { s_uuid: 6401, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 20 } }
|
||||
// ],
|
||||
// info: "战斗开始时为全队永久+25%暴伤、+20攻击力"
|
||||
// },
|
||||
// 5056: {
|
||||
// uuid: 5056, name: "预言法师", path: "hm6", fac: FacSet.HERO, pool_lv: 5, lv: 1, type: HType.Long, hp: 717, ap: 200,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Normal3].cd, ccd: 0 } },
|
||||
// fstart: [
|
||||
// { s_uuid: 6405, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 20 } },
|
||||
// { s_uuid: 6403, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 15 } },
|
||||
// { s_uuid: 6404, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 20 } }
|
||||
// ],
|
||||
// info: "战斗开始时为全队永久+20%击晕概率、+15%暴击率、+20%暴伤"
|
||||
// },
|
||||
|
||||
// ========== field 类(法师 · 驻场光环) ==========
|
||||
5061:{uuid:5061,name:"亡语法师",path:"hm1", fac:FacSet.HERO,pool_lv:3,lv:1,type:HType.Long,hp:430,ap:120,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Mid2].cd,ccd:0}},
|
||||
field:[7015],
|
||||
info:"驻场期间全队死亡触发技能次数+1,死亡后光环消失"},
|
||||
// 5061: {
|
||||
// uuid: 5061, name: "亡语法师", path: "hm1", fac: FacSet.HERO, pool_lv: 3, lv: 1, type: HType.Long, hp: 430, ap: 120,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Mid2].cd, ccd: 0 } },
|
||||
// field: [7015],
|
||||
// info: "驻场期间全队死亡触发技能次数+1,死亡后光环消失"
|
||||
// },
|
||||
|
||||
// ========== fend + atking 类(辅助 · 治疗续航 + 波次增益) ==========
|
||||
5071:{uuid:5071,name:"治愈牧师",path:"hh1", fac:FacSet.HERO,pool_lv:1,lv:1,type:HType.Long,hp:143,ap:40,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Normal3].cd,ccd:0}},
|
||||
atking:[{s_uuid:6302,t_num:5,overrides:{TGroup:TGroup.Team,ap:200}}],
|
||||
info:"每攻击5次治疗全队200%AP"},
|
||||
5072:{uuid:5072,name:"小金库",path:"hh2", fac:FacSet.HERO,pool_lv:2,lv:1,type:HType.Long,hp:287,ap:80,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Mid1].cd,ccd:0}},
|
||||
atking:[{s_uuid:6302,t_num:5,overrides:{TGroup:TGroup.Team,ap:200}}],
|
||||
fend:[{s_uuid:6303,t_num:1,overrides:{gold:1}}],
|
||||
info:"每攻击5次治疗全队,每波结束获得1金币"},
|
||||
5073:{uuid:5073,name:"强化牧师",path:"hh3", fac:FacSet.HERO,pool_lv:3,lv:1,type:HType.Long,hp:430,ap:120,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Normal3].cd,ccd:0}},
|
||||
atking:[{s_uuid:6302,t_num:5,overrides:{TGroup:TGroup.Team,ap:250}}],
|
||||
fend:[{s_uuid:6401,t_num:1,overrides:{TGroup:TGroup.Team,ap:10}}],
|
||||
info:"每攻击5次治疗全队,每波结束全队永久+10攻击力"},
|
||||
5074:{uuid:5074,name:"生命牧师",path:"hh4", fac:FacSet.HERO,pool_lv:4,lv:1,type:HType.Long,hp:573,ap:160,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Normal3].cd,ccd:0}},
|
||||
atking:[{s_uuid:6302,t_num:5,overrides:{TGroup:TGroup.Team,ap:250}}],
|
||||
fend:[{s_uuid:6402,t_num:1,overrides:{TGroup:TGroup.Team,ap:80}}],
|
||||
info:"每攻击5次治疗全队,每波结束全队永久+80最大生命值"},
|
||||
5075:{uuid:5075,name:"全能牧师",path:"hh5", fac:FacSet.HERO,pool_lv:5,lv:1,type:HType.Long,hp:717,ap:200,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:AtkSpeedSet[AtkSpeedLv.Normal2].cd,ccd:0}},
|
||||
atking:[{s_uuid:6302,t_num:5,overrides:{TGroup:TGroup.Team,ap:300}}],
|
||||
fend:[
|
||||
{s_uuid:6401,t_num:1,overrides:{TGroup:TGroup.Team,ap:12}},
|
||||
{s_uuid:6402,t_num:1,overrides:{TGroup:TGroup.Team,ap:60}}
|
||||
],
|
||||
info:"每攻击5次治疗全队300%AP,每波结束全队永久+12攻击力、+60最大生命值"},
|
||||
5071: {
|
||||
uuid: 5071, name: "治愈牧师", path: "hh1", fac: FacSet.HERO, pool_lv: 1, lv: 1, type: HType.Long, hp: 143, ap: 40,
|
||||
skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Normal3].cd, ccd: 0 } },
|
||||
atking: [{ s_uuid: 6302, t_num: 5, overrides: { TGroup: TGroup.Team, ap: 200 } }],
|
||||
info: "每攻击5次治疗全队200%AP"
|
||||
},
|
||||
// 5072: {
|
||||
// uuid: 5072, name: "小金库", path: "hh2", fac: FacSet.HERO, pool_lv: 2, lv: 1, type: HType.Long, hp: 287, ap: 80,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Mid1].cd, ccd: 0 } },
|
||||
// atking: [{ s_uuid: 6302, t_num: 5, overrides: { TGroup: TGroup.Team, ap: 200 } }],
|
||||
// fend: [{ s_uuid: 6303, t_num: 1, overrides: { gold: 1 } }],
|
||||
// info: "每攻击5次治疗全队,每波结束获得1金币"
|
||||
// },
|
||||
// 5073: {
|
||||
// uuid: 5073, name: "强化牧师", path: "hh3", fac: FacSet.HERO, pool_lv: 3, lv: 1, type: HType.Long, hp: 430, ap: 120,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Normal3].cd, ccd: 0 } },
|
||||
// atking: [{ s_uuid: 6302, t_num: 5, overrides: { TGroup: TGroup.Team, ap: 250 } }],
|
||||
// fend: [{ s_uuid: 6401, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 10 } }],
|
||||
// info: "每攻击5次治疗全队,每波结束全队永久+10攻击力"
|
||||
// },
|
||||
// 5074: {
|
||||
// uuid: 5074, name: "生命牧师", path: "hh4", fac: FacSet.HERO, pool_lv: 4, lv: 1, type: HType.Long, hp: 573, ap: 160,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Normal3].cd, ccd: 0 } },
|
||||
// atking: [{ s_uuid: 6302, t_num: 5, overrides: { TGroup: TGroup.Team, ap: 250 } }],
|
||||
// fend: [{ s_uuid: 6402, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 80 } }],
|
||||
// info: "每攻击5次治疗全队,每波结束全队永久+80最大生命值"
|
||||
// },
|
||||
// 5075: {
|
||||
// uuid: 5075, name: "全能牧师", path: "hh5", fac: FacSet.HERO, pool_lv: 5, lv: 1, type: HType.Long, hp: 717, ap: 200,
|
||||
// skills: { 6001: { uuid: 6001, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.Normal2].cd, ccd: 0 } },
|
||||
// atking: [{ s_uuid: 6302, t_num: 5, overrides: { TGroup: TGroup.Team, ap: 300 } }],
|
||||
// fend: [
|
||||
// { s_uuid: 6401, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 12 } },
|
||||
// { s_uuid: 6402, t_num: 1, overrides: { TGroup: TGroup.Team, ap: 60 } }
|
||||
// ],
|
||||
// info: "每攻击5次治疗全队300%AP,每波结束全队永久+12攻击力、+60最大生命值"
|
||||
// },
|
||||
|
||||
|
||||
|
||||
|
||||
/*
|
||||
*=============怪物配置列表================
|
||||
* 基础近战型(lv:1) : SPEED:800 |AP:12 | HP:360 | skills[0].cd=0.65
|
||||
* 重型坦克型(lv:1) : SPEED:800 |AP:30 | HP:1050 | skills[0].cd=2
|
||||
* 远程dps(lv:1) : SPEED:800 |AP:45 | HP:240 | skills[0].cd=1.5
|
||||
* 远程辅助(lv:1) : SPEED:800 |AP:20 | HP:240 | skills[0].cd=1
|
||||
* 精英 (lv:1) : SPEED:800 |AP:20 | HP:4500 | skills[0].cd=1
|
||||
*/
|
||||
/*
|
||||
*=============怪物配置列表================
|
||||
* 基础近战型(lv:1) : SPEED:800 |AP:12 | HP:360 | skills[0].cd=0.65
|
||||
* 重型坦克型(lv:1) : SPEED:800 |AP:30 | HP:1050 | skills[0].cd=2
|
||||
* 远程dps(lv:1) : SPEED:800 |AP:45 | HP:240 | skills[0].cd=1.5
|
||||
* 远程辅助(lv:1) : SPEED:800 |AP:20 | HP:240 | skills[0].cd=1
|
||||
* 精英 (lv:1) : SPEED:800 |AP:20 | HP:4500 | skills[0].cd=1
|
||||
*/
|
||||
|
||||
|
||||
// 基础怪物 (全部固定点位站桩攻击,HType仅决定是前排还是后排)
|
||||
// 前排怪物 (站在前排,承受更多伤害) — v5: TD节奏CD,多而弱爽感设计
|
||||
6001:{uuid:6001,name:"兽人战士",path:"m1", fac:FacSet.MON,lv:1,type:HType.Melee,monType:MonType.Melee,hp:220,ap:10,speed:70,
|
||||
skills:{6005:{uuid:6005,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow1].cd,ccd:0}},info:"基础前排怪"},
|
||||
6002:{uuid:6002,name:"兽人精锐战士",path:"m2", fac:FacSet.MON,lv:1,type:HType.Melee,monType:MonType.Melee,hp:300,ap:14,speed:110,
|
||||
skills:{6005:{uuid:6005,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow2].cd,ccd:0}},info:"进阶前排怪,更快更痛"},
|
||||
6003:{uuid:6003,name:"兽人重装兵",path:"m3", fac:FacSet.MON,lv:1,type:HType.Melee,monType:MonType.Heavy,hp:850,ap:20,speed:50,
|
||||
skills:{6005:{uuid:6005,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow3].cd,ccd:0}},info:"重型坦克怪,高HP慢攻"},
|
||||
6001: {
|
||||
uuid: 6001, name: "兽人战士", path: "m1", fac: FacSet.MON, lv: 1, type: HType.Melee, monType: MonType.Melee, hp: 220, ap: 10, speed: 70,
|
||||
skills: { 6005: { uuid: 6005, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow1].cd, ccd: 0 } }, info: "基础前排怪"
|
||||
},
|
||||
6002: {
|
||||
uuid: 6002, name: "兽人精锐战士", path: "m2", fac: FacSet.MON, lv: 1, type: HType.Melee, monType: MonType.Melee, hp: 300, ap: 14, speed: 110,
|
||||
skills: { 6005: { uuid: 6005, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow2].cd, ccd: 0 } }, info: "进阶前排怪,更快更痛"
|
||||
},
|
||||
6003: {
|
||||
uuid: 6003, name: "兽人重装兵", path: "m3", fac: FacSet.MON, lv: 1, type: HType.Melee, monType: MonType.Heavy, hp: 850, ap: 20, speed: 50,
|
||||
skills: { 6005: { uuid: 6005, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow3].cd, ccd: 0 } }, info: "重型坦克怪,高HP慢攻"
|
||||
},
|
||||
// 后排怪物 (站在后排,输出更高)
|
||||
6004:{uuid:6004,name:"兽人射手",path:"m4", fac:FacSet.MON,lv:1,type:HType.Long,monType:MonType.Long,hp:190,ap:35,speed:70,
|
||||
skills:{6008:{uuid:6008,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow1].cd,ccd:0}},info:"后排高DPS怪"},
|
||||
6005:{uuid:6005,name:"兽人刺客",path:"m5", fac:FacSet.MON,lv:1,type:HType.Long,monType:MonType.Assassin,hp:210,ap:38,speed:130,
|
||||
skills:{6103:{uuid:6103,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow2].cd,ccd:0}},info:"高AP快速攻击刺客"},
|
||||
6004: {
|
||||
uuid: 6004, name: "兽人射手", path: "m4", fac: FacSet.MON, lv: 1, type: HType.Long, monType: MonType.Long, hp: 190, ap: 35, speed: 70,
|
||||
skills: { 6008: { uuid: 6008, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow1].cd, ccd: 0 } }, info: "后排高DPS怪"
|
||||
},
|
||||
6005: {
|
||||
uuid: 6005, name: "兽人刺客", path: "m5", fac: FacSet.MON, lv: 1, type: HType.Long, monType: MonType.Assassin, hp: 210, ap: 38, speed: 130,
|
||||
skills: { 6103: { uuid: 6103, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow2].cd, ccd: 0 } }, info: "高AP快速攻击刺客"
|
||||
},
|
||||
// 特殊位怪物
|
||||
6006:{uuid:6006,name:"骷髅领主",path:"m6", fac:FacSet.MON,lv:1,type:HType.Melee,monType:MonType.MeleeBoss,hp:5000,ap:20,speed:60,
|
||||
skills:{6005:{uuid:6005,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow3].cd,ccd:0}},info:"前排MiniBoss级坦克"},
|
||||
6007:{uuid:6007,name:"兽人术士",path:"m7", fac:FacSet.MON,lv:1,type:HType.Long,monType:MonType.Support,hp:300,ap:24,speed:70,
|
||||
skills:{6103:{uuid:6103,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow1].cd,ccd:0}},info:"后排法师怪,魔法攻击"},
|
||||
6008:{uuid:6008,name:"兽人火法",path:"m8", fac:FacSet.MON,lv:1,type:HType.Long,monType:MonType.Summoner,hp:270,ap:32,speed:70,
|
||||
skills:{6103:{uuid:6103,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow2].cd,ccd:0}},info:"后排高输出法师怪"},
|
||||
6006: {
|
||||
uuid: 6006, name: "骷髅领主", path: "m6", fac: FacSet.MON, lv: 1, type: HType.Melee, monType: MonType.MeleeBoss, hp: 5000, ap: 20, speed: 60,
|
||||
skills: { 6005: { uuid: 6005, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow3].cd, ccd: 0 } }, info: "前排MiniBoss级坦克"
|
||||
},
|
||||
6007: {
|
||||
uuid: 6007, name: "兽人术士", path: "m7", fac: FacSet.MON, lv: 1, type: HType.Long, monType: MonType.Support, hp: 300, ap: 24, speed: 70,
|
||||
skills: { 6103: { uuid: 6103, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow1].cd, ccd: 0 } }, info: "后排法师怪,魔法攻击"
|
||||
},
|
||||
6008: {
|
||||
uuid: 6008, name: "兽人火法", path: "m8", fac: FacSet.MON, lv: 1, type: HType.Long, monType: MonType.Summoner, hp: 270, ap: 32, speed: 70,
|
||||
skills: { 6103: { uuid: 6103, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow2].cd, ccd: 0 } }, info: "后排高输出法师怪"
|
||||
},
|
||||
|
||||
// BOSS怪物 — Boss节奏1.2-1.5s,删除不存在的6206技能
|
||||
6101:{uuid:6101,name:"兽人首领-双刀战士",path:"mb1", fac:FacSet.MON,lv:6,type:HType.Melee,monType:MonType.MeleeBoss,hp:1900,ap:30,speed:120,
|
||||
skills:{6103:{uuid:6103,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow3].cd,ccd:0}},info:"前排Boss,高攻速"},
|
||||
6102:{uuid:6102,name:"兽人首领-斧头战士",path:"mb2", fac:FacSet.MON,lv:6,type:HType.Melee,monType:MonType.MeleeBoss,hp:7500,ap:26,speed:60,
|
||||
skills:{6005:{uuid:6005,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow1].cd,ccd:0}},info:"前排Boss,超高HP"},
|
||||
6103:{uuid:6103,name:"兽人首领-魔法师",path:"mb3", fac:FacSet.MON,lv:6,type:HType.Long,monType:MonType.LongBoss,hp:2250,ap:38,speed:110,
|
||||
skills:{6103:{uuid:6103,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow2].cd,ccd:0}},info:"后排法系Boss,高AP"},
|
||||
6104:{uuid:6104,name:"兽人首领-射手",path:"mb4", fac:FacSet.MON,lv:6,type:HType.Long,monType:MonType.LongBoss,hp:6800,ap:30,speed:70,
|
||||
skills:{6005:{uuid:6005,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow3].cd,ccd:0}},info:"后排位Boss,均衡型"},
|
||||
6105:{uuid:6105,name:"亡灵首领-法师",path:"mb5", fac:FacSet.MON,lv:6,type:HType.Long,monType:MonType.LongBoss,hp:2600,ap:42,speed:110,
|
||||
skills:{6103:{uuid:6103,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow1].cd,ccd:0}},info:"后排高AP Boss"},
|
||||
6106:{uuid:6106,name:"亡灵首领-骑马战士",path:"mb6", fac:FacSet.MON,lv:6,type:HType.Melee,monType:MonType.MeleeBoss,hp:9000,ap:26,speed:130,
|
||||
skills:{6005:{uuid:6005,lv:1,cd:AtkSpeedSet[AtkSpeedLv.VerySlow3].cd,ccd:0}},info:"前排终极Boss,最高HP+高速"},
|
||||
// BOSS怪物 — Boss节奏1.2-1.5s,删除不存在的6206技能
|
||||
6101: {
|
||||
uuid: 6101, name: "兽人首领-双刀战士", path: "mb1", fac: FacSet.MON, lv: 6, type: HType.Melee, monType: MonType.MeleeBoss, hp: 1900, ap: 30, speed: 120,
|
||||
skills: { 6103: { uuid: 6103, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow3].cd, ccd: 0 } }, info: "前排Boss,高攻速"
|
||||
},
|
||||
6102: {
|
||||
uuid: 6102, name: "兽人首领-斧头战士", path: "mb2", fac: FacSet.MON, lv: 6, type: HType.Melee, monType: MonType.MeleeBoss, hp: 7500, ap: 26, speed: 60,
|
||||
skills: { 6005: { uuid: 6005, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow1].cd, ccd: 0 } }, info: "前排Boss,超高HP"
|
||||
},
|
||||
6103: {
|
||||
uuid: 6103, name: "兽人首领-魔法师", path: "mb3", fac: FacSet.MON, lv: 6, type: HType.Long, monType: MonType.LongBoss, hp: 2250, ap: 38, speed: 110,
|
||||
skills: { 6103: { uuid: 6103, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow2].cd, ccd: 0 } }, info: "后排法系Boss,高AP"
|
||||
},
|
||||
6104: {
|
||||
uuid: 6104, name: "兽人首领-射手", path: "mb4", fac: FacSet.MON, lv: 6, type: HType.Long, monType: MonType.LongBoss, hp: 6800, ap: 30, speed: 70,
|
||||
skills: { 6005: { uuid: 6005, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow3].cd, ccd: 0 } }, info: "后排位Boss,均衡型"
|
||||
},
|
||||
6105: {
|
||||
uuid: 6105, name: "亡灵首领-法师", path: "mb5", fac: FacSet.MON, lv: 6, type: HType.Long, monType: MonType.LongBoss, hp: 2600, ap: 42, speed: 110,
|
||||
skills: { 6103: { uuid: 6103, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow1].cd, ccd: 0 } }, info: "后排高AP Boss"
|
||||
},
|
||||
6106: {
|
||||
uuid: 6106, name: "亡灵首领-骑马战士", path: "mb6", fac: FacSet.MON, lv: 6, type: HType.Melee, monType: MonType.MeleeBoss, hp: 9000, ap: 26, speed: 130,
|
||||
skills: { 6005: { uuid: 6005, lv: 1, cd: AtkSpeedSet[AtkSpeedLv.VerySlow3].cd, ccd: 0 } }, info: "前排终极Boss,最高HP+高速"
|
||||
},
|
||||
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
export const HeroList: number[] = [
|
||||
// atked 类(战士 · 自身强化)
|
||||
5011, 5012, 5013, 5014, 5015, 5016,
|
||||
5011,
|
||||
// 5012, 5013, 5014, 5015, 5016,
|
||||
// atking 刺客(自身强化)
|
||||
5021, 5022, 5023,
|
||||
5021,
|
||||
// 5022, 5023,
|
||||
// atking 射手(队友强化)
|
||||
5031, 5032, 5033,
|
||||
5031,
|
||||
// 5032, 5033,
|
||||
// dead 类(死亡遗产)
|
||||
5041, 5042, 5043, 5044, 5045,
|
||||
// 5041, 5042, 5043, 5044, 5045,
|
||||
// fstart 类(法师 · 战前增益)
|
||||
5051, 5052, 5053, 5054, 5055, 5056,
|
||||
5051,
|
||||
// 5052, 5053, 5054, 5055, 5056,
|
||||
// field 类(法师 · 驻场光环)
|
||||
5061,
|
||||
// 5061,
|
||||
// fend + atking 类(辅助 · 治疗 + 波次增益)
|
||||
5071, 5072, 5073, 5074, 5075,
|
||||
5071,
|
||||
// 5072, 5073, 5074, 5075,
|
||||
];
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user