skip EXP computation for Level 200 characters

This commit is contained in:
Martin Michelsen
2025-10-11 17:38:13 -07:00
parent 36a1e0dfae
commit 6ba92d3a7a
+3 -3
View File
@@ -4036,7 +4036,9 @@ static asio::awaitable<void> on_enemy_exp_request_bb(shared_ptr<Client> c, Subco
? 0.0f ? 0.0f
: l->exp_share_multiplier; : l->exp_share_multiplier;
double rate_factor; double rate_factor;
if (ene_st->last_hit_by_client_id(client_id)) { if (lc->character_file()->disp.stats.level >= 199) {
rate_factor = 0.0;
} else if (ene_st->last_hit_by_client_id(client_id)) {
rate_factor = max<double>(1.0, exp_share_multiplier); rate_factor = max<double>(1.0, exp_share_multiplier);
} else if (ene_st->ever_hit_by_client_id(client_id)) { } else if (ene_st->ever_hit_by_client_id(client_id)) {
rate_factor = max<double>(0.8, exp_share_multiplier); rate_factor = max<double>(0.8, exp_share_multiplier);
@@ -4062,11 +4064,9 @@ static asio::awaitable<void> on_enemy_exp_request_bb(shared_ptr<Client> c, Subco
if (lc->check_flag(Client::Flag::DEBUG_ENABLED)) { if (lc->check_flag(Client::Flag::DEBUG_ENABLED)) {
send_text_message_fmt(lc, "$C5+{} E-{:03X} {}", player_exp, ene_st->e_id, phosg::name_for_enum(type)); send_text_message_fmt(lc, "$C5+{} E-{:03X} {}", player_exp, ene_st->e_id, phosg::name_for_enum(type));
} }
if (lc->character_file()->disp.stats.level < 199) {
add_player_exp(lc, player_exp); add_player_exp(lc, player_exp);
} }
} }
}
// Update kill counts on unsealable items, but only for the player who // Update kill counts on unsealable items, but only for the player who
// actually killed the enemy // actually killed the enemy