This commit is contained in:
aozhiwei 2024-01-15 14:36:39 +08:00
parent a556db9d7f
commit 35aededcf4

View File

@ -2446,6 +2446,7 @@ void Creature::WinExp(int win_exp)
if (hero_grow_meta_->IsFullLevel()) {
return;
}
int old_level = GetHeroLevel();
int add_exp = win_exp;
while (
hero_grow_meta_->GetNextMeta() &&
@ -2456,8 +2457,29 @@ void Creature::WinExp(int win_exp)
add_exp -= hero_grow_meta_->levelExp();
hero_grow_meta_ = hero_grow_meta_->GetNextMeta();
hero_level_ = hero_grow_meta_->level();
hero_exp_ = 0;
GenLevelAttr();
}
if (hero_grow_meta_->levelExp() <= 0) {
hero_exp_ = 0;
return;
}
if (hero_grow_meta_->IsFullLevel()) {
hero_exp_ = 0;
return;
}
hero_exp_ = std::max(hero_exp_ + add_exp, hero_grow_meta_->levelExp() - 1);
if (GetHeroLevel() > old_level) {
room->frame_event.AddPropChgEx
(
GetWeakPtrRef(),
kPropLevelUp,
GetUniId(),
old_level,
GetHeroLevel(),
0,
false);
}
}
void Creature::RecalcDtoAttr()