skip EXP computation for Level 200 characters
This commit is contained in:
@@ -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,9 +4064,7 @@ 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);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user