[Quest API] (Performance) Check event EVENT_AA_BUY or EVENT_AA_GAIN exist before export and execute (#2892)

* [Quest API] Optionally parse EVENT_AA_BUY and EVENT_AA_GAIN

# Notes
- Optionally parse these events instead of always doing so.

* Cleanup
This commit is contained in:
Alex King 2023-02-12 23:04:54 -05:00 committed by GitHub
parent 9dd4cf71f1
commit efd6d2f9b1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 14 deletions

View File

@ -1239,15 +1239,17 @@ void Client::FinishAlternateAdvancementPurchase(AA::Rank *rank, bool ignore_cost
}
}
const auto export_string = fmt::format(
"{} {} {} {}",
cost,
rank->id,
rank->prev_id,
rank->next_id
);
if (parse->PlayerHasQuestSub(EVENT_AA_BUY)) {
const auto& export_string = fmt::format(
"{} {} {} {}",
cost,
rank->id,
rank->prev_id,
rank->next_id
);
parse->EventPlayer(EVENT_AA_BUY, this, export_string, 0);
parse->EventPlayer(EVENT_AA_BUY, this, export_string, 0);
}
CalcBonuses();

View File

@ -725,12 +725,9 @@ void Client::SetEXP(uint64 set_exp, uint64 set_aaxp, bool isrezzexp) {
SendSound();
}
const auto export_string = fmt::format(
"{}",
gained
);
parse->EventPlayer(EVENT_AA_GAIN, this, export_string, 0);
if (parse->PlayerHasQuestSub(EVENT_AA_GAIN)) {
parse->EventPlayer(EVENT_AA_GAIN, this, std::to_string(gained), 0);
}
RecordPlayerEventLog(PlayerEvent::AA_GAIN, PlayerEvent::AAGainedEvent{gained});