Files
heros/assets/script/game/common/config/heroSet.ts
panw c03a655f15 docs(design): 重构游戏设计文档,完善核心玩法和英雄体系
- 重写并精简设计文档内容,去除重复和过时信息
- 明确游戏为单局制肉鸽塔防,强调自动战斗与策略奖励选择
- 细化金币经济、特殊事件、评分与成就系统设计
- 详细描述关卡结构、难度递增与游戏进程设计
- 完善英雄分类与成长体系,新增春秋战国及楚汉争霸英雄介绍
- 明确装备与技能系统分级与升级机制
- 设计多样化策略构筑与资源管理方案
- 提供界面和交互设计指导,简化操作并增强反馈
- 删除旧有天赋强化系统相关文档,统一调整为新设计方向
- 更新英雄配置信息,更换主将与刺客为刘邦与荆轲角色
2025-10-24 16:20:02 +08:00

127 lines
4.2 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { v3 } from "cc"
import { FacSet } from "./BoxSet"
import { smc } from "../SingletonModuleComp"
import { BuffConf, DbuffConf } from "./SkillSet"
import { debuff } from "../../skills/debuff"
export enum AttrSet {
ATTR_MAX = 85,
}
export enum HType {
warrior = 0,
remote = 1,
mage = 2,
support = 3,
assassin = 4,
}
export const HTypeName ={
0:"战士",
1:"远程",
2:"法师",
3:"辅助",
4:"刺客",
}
//fac:FacSet.HERO
export const getHeroList = ()=>{
const filteredHeros = Object.values(HeroInfo).filter(item=>{
const facMatch = item.fac === FacSet.HERO;
return facMatch;
});
// 根据smc.heros中的数据分离拥有和未拥有的英雄
// smc.heros是一个包含英雄ID的数组如[5001, 5002]
const ownedHeros = filteredHeros.filter(item => smc.heros.includes(item.uuid));
const unownedHeros = filteredHeros.filter(item => !smc.heros.includes(item.uuid));
// 合并列表:拥有的在前,未拥有的在后
return [...ownedHeros, ...unownedHeros].map(item => item.uuid);
}
//fac:FacSet.MON
export const getMonList = ()=>{
return Object.values(HeroInfo).filter(item=>{
const facMatch = item.fac === FacSet.MON;
return facMatch ;
}).map(item=>item.uuid)
}
export const HeroPos={
0:{pos:v3(-240,100,0)},
1:{pos:v3(0,100,0)},
2:{pos:v3(0,100,0)},
}
export const MonSet = {
0:{pos:v3(240,100,0)},
1:{pos:v3(320,100,0)},
2:{pos:v3(360,100,0)},
3:{pos:v3(400,100,0)},
4:{pos:v3(440,100,0)},
5:{pos:v3(480,100,0)},
6:{pos:v3(520,100,0)},
7:{pos:v3(560,100,0)},
}
export enum HeroConf{
COST=1500,
}
export enum HeroUpSet {
MP=5,
HP=10,
LVMP=100,
LVHP=100,
LVATK=10,
LVDEF=5,
}
export interface heroInfo{
uuid:number, name:string, path:string,fac:FacSet,kind:number,type:HType,
hp:number,mp:number,map:number, def:number, ap:number,dis:number, speed:number,lv:number,skills:number[],
buff:BuffConf[], debuff:DbuffConf[], info:string
}
export const HeroInfo: Record<number, heroInfo> = {
//主将
5001:{uuid:5001,name:"刘邦",path:"hk1", fac:FacSet.HERO, kind:1,
type:HType.warrior,lv:1,hp:100,mp:100,map:100,def:5,ap:15,dis:100,speed:150,skills:[6001,6005],
buff:[],debuff:[],info:""},
5002:{uuid:5002,name:"荆轲",path:"hc1", fac:FacSet.HERO, kind:1,
type:HType.warrior,lv:1,hp:100,mp:100,map:100,def:5,ap:15,dis:100,speed:150,skills:[6001,6005],
buff:[],debuff:[],info:""},
5005:{uuid:5005,name:"绿箭",path:"ha1", fac:FacSet.HERO, kind:2,
type:HType.remote,lv:1,hp:100,mp:100,map:100,def:5,ap:15,dis:400,speed:100,skills:[6001,6005],
buff:[],debuff:[],info:""},
5007:{uuid:5007,name:"牧师",path:"hh1", fac:FacSet.HERO, kind:2,
type:HType.mage,lv:1,hp:100,mp:100,map:100,def:5,ap:15,dis:400,speed:100,skills:[6001,6005],
buff:[],debuff:[],info:""},
5008:{uuid:5008,name:"火女",path:"hm1", fac:FacSet.HERO, kind:2,
type:HType.mage,lv:1,hp:100,mp:100,map:100,def:5,ap:15,dis:400,speed:100,skills:[6001,6005],
buff:[],debuff:[],info:""},
5009:{uuid:5009,name:"魔法精灵",path:"hm2", fac:FacSet.HERO, kind:2,
type:HType.mage,lv:1,hp:100,mp:100,map:100,def:5,ap:15,dis:400,speed:100,skills:[6006,6006,6301,6302,6303],
buff:[],debuff:[],info:""},
5010:{uuid:5010,name:"德鲁伊",path:"hz1", fac:FacSet.HERO, kind:2,
type:HType.mage,lv:1,hp:100,mp:100,map:100,def:5,ap:15,dis:400,speed:100,skills:[6007,6007,6301,6302,6303],
buff:[],debuff:[],info:""},
//怪物
5201:{uuid:5201,name:"兽人战士",path:"mo1", fac:FacSet.MON, kind:1,
type:HType.warrior,lv:1,hp:25,mp:100,map:100,def:5,ap:5,dis:90,speed:100,skills:[6005],
buff:[],debuff:[],info:"普通怪物-战士型"},
5202:{uuid:5202,name:"兽人刺客",path:"mo1", fac:FacSet.MON, kind:1,
type:HType.remote,lv:1,hp:20,mp:100,map:100,def:5,ap:5,dis:350,speed:100,skills:[6005],
buff:[],debuff:[],info:"普通怪物-战士型"},
5203:{uuid:5203,name:"兽人护卫",path:"mo1", fac:FacSet.MON, kind:1,
type:HType.warrior,lv:1,hp:25,mp:100,map:100,def:5,ap:5,dis:90,speed:100,skills:[6005],
buff:[],debuff:[],info:"普通怪物-战士型"},
};