feat(英雄): 添加is_master参数控制英雄主从状态

修改Hero类的load方法和MissionHeroComp类的addHero方法,增加is_master参数
用于区分主控英雄和从属英雄,取代之前硬编码的true值
This commit is contained in:
walkpan
2026-01-02 19:28:43 +08:00
parent 10e287c134
commit a9e7b5c464
2 changed files with 7 additions and 5 deletions

View File

@@ -37,7 +37,7 @@ export class Hero extends ecs.Entity {
/** 加载角色 */
load(pos: Vec3 = Vec3.ZERO,scale:number = 1,uuid:number=1001,fight_pos:number=1) {
load(pos: Vec3 = Vec3.ZERO,scale:number = 1,uuid:number=1001,fight_pos:number=1,is_master:boolean=false) {
// console.log("英雄加载:",uuid,pos,scale,info)
scale = 1
// 查找空闲英雄槽位
@@ -72,7 +72,7 @@ export class Hero extends ecs.Entity {
model.lv = hero.lv ? hero.lv : 1;
model.type = hero.type;
model.fac = FacSet.HERO;
model.is_master = true;
model.is_master = is_master;
// ✅ 初始化技能数据(迁移到 HeroSkillsComp
skillsComp.initSkills(hero.skills, uuid, this);

View File

@@ -42,7 +42,7 @@ export class MissionHeroCompComp extends CCComp {
// this.current_hero_uuid=0
smc.vmdata.mission_data.hero_num=0
// console.log("[MissionHeroComp]:fight_ready",smc.fight_heros,Object.keys(smc.fight_heros).length)
this.addHero(smc.fight_hero,false)
this.addHero(smc.fight_hero,true)
// for(let i=0;i<Object.keys(heros).length;i++){
// if(heros[i]!=0){
// // console.log("[MissionHeroComp]:fight_ready",heros[i])
@@ -62,13 +62,15 @@ export class MissionHeroCompComp extends CCComp {
}
/** 添加英雄 */
private addHero(uuid:number=1001,is_zhaohuan:boolean=false) {
private addHero(uuid:number=1001,is_master:boolean=false) {
// console.log("[MissionHeroComp]:addHero",uuid,is_zhaohuan)
let hero_pos=0
let hero = ecs.getEntity<Hero>(Hero);
let scale = 1
let pos:Vec3 = HeroPos[hero_pos].pos;
hero.load(pos,scale,uuid);
let fight_pos=1
hero.load(pos,scale,uuid,fight_pos,is_master);
}