fix(游戏逻辑): 修复英雄初始等级和奖励触发逻辑
将SingletonModuleComp中英雄初始等级从0改为1,避免可能的逻辑错误。在MissionComp中重构奖励触发逻辑,将call_cards方法提取为独立函数并在to_fight中调用,确保战斗开始时正确触发当前等级的奖励。
This commit is contained in:
@@ -109,7 +109,7 @@ export class SingletonModuleComp extends ecs.Comp {
|
|||||||
path:'',
|
path:'',
|
||||||
as:0,
|
as:0,
|
||||||
type:0,
|
type:0,
|
||||||
lv:0,
|
lv:1,
|
||||||
exp:0,
|
exp:0,
|
||||||
exp_max:100,
|
exp_max:100,
|
||||||
exp_pre:0,
|
exp_pre:0,
|
||||||
|
|||||||
@@ -54,9 +54,16 @@ export class MissionComp extends CCComp {
|
|||||||
// 升级奖励触发
|
// 升级奖励触发
|
||||||
onLevelUp(event: string, args: any) {
|
onLevelUp(event: string, args: any) {
|
||||||
console.log(`[MissionComp] 英雄升级到 ${args.lv} 级!`);
|
console.log(`[MissionComp] 英雄升级到 ${args.lv} 级!`);
|
||||||
|
this.call_cards(args.lv)
|
||||||
// 获取当前等级对应的奖励类型
|
// 获取当前等级对应的奖励类型
|
||||||
const rewardType = getLevelRewardType(args.lv);
|
|
||||||
|
|
||||||
|
|
||||||
|
// 触发奖励选择界面 (暂时留空)
|
||||||
|
// this.showLevelUpReward();
|
||||||
|
}
|
||||||
|
call_cards(lv:number){
|
||||||
|
const rewardType = getLevelRewardType(lv);
|
||||||
console.log(`[MissionComp] 触发奖励选择, 类型: ${rewardType}`);
|
console.log(`[MissionComp] 触发奖励选择, 类型: ${rewardType}`);
|
||||||
|
|
||||||
// 根据类型发送对应的事件
|
// 根据类型发送对应的事件
|
||||||
@@ -78,11 +85,7 @@ export class MissionComp extends CCComp {
|
|||||||
oops.message.dispatchEvent(GameEvent.TalentSelect); // 默认回退到天赋选择
|
oops.message.dispatchEvent(GameEvent.TalentSelect); // 默认回退到天赋选择
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 触发奖励选择界面 (暂时留空)
|
|
||||||
// this.showLevelUpReward();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
showLevelUpReward() {
|
showLevelUpReward() {
|
||||||
// TODO: 显示三选一技能/属性奖励界面
|
// TODO: 显示三选一技能/属性奖励界面
|
||||||
console.log("[MissionComp] 显示升级奖励界面 (TODO)");
|
console.log("[MissionComp] 显示升级奖励界面 (TODO)");
|
||||||
@@ -171,7 +174,7 @@ export class MissionComp extends CCComp {
|
|||||||
to_fight(){
|
to_fight(){
|
||||||
smc.mission.in_fight=true
|
smc.mission.in_fight=true
|
||||||
oops.message.dispatchEvent(GameEvent.FightStart) //GameSetMonComp 监听刷怪
|
oops.message.dispatchEvent(GameEvent.FightStart) //GameSetMonComp 监听刷怪
|
||||||
oops.message.dispatchEvent(GameEvent.TalentSelect)
|
this.call_cards(smc.vmdata.hero.lv)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user