[Quest API] (Performance) Check event exists before export and execute EVENT_ENTER_ZONE and EVENT_ZONE (#2900)

# Notes
- Optionally parse these events instead of always doing so.
This commit is contained in:
Alex King
2023-02-12 23:32:37 -05:00
committed by GitHub
parent 2dcff247c8
commit 71b2bf6a64
2 changed files with 17 additions and 13 deletions
+14 -12
View File
@@ -202,19 +202,21 @@ void Client::Handle_OP_ZoneChange(const EQApplicationPacket *app) {
min_status = zone_data->min_status;
min_level = zone_data->min_level;
const auto& export_string = fmt::format(
"{} {} {} {} {} {}",
zone->GetZoneID(),
zone->GetInstanceID(),
zone->GetInstanceVersion(),
target_zone_id,
target_instance_id,
target_instance_version
);
if (parse->PlayerHasQuestSub(EVENT_ZONE)) {
const auto& export_string = fmt::format(
"{} {} {} {} {} {}",
zone->GetZoneID(),
zone->GetInstanceID(),
zone->GetInstanceVersion(),
target_zone_id,
target_instance_id,
target_instance_version
);
if (parse->EventPlayer(EVENT_ZONE, this, export_string, 0) != 0) {
SendZoneCancel(zc);
return;
if (parse->EventPlayer(EVENT_ZONE, this, export_string, 0) != 0) {
SendZoneCancel(zc);
return;
}
}
if (player_event_logs.IsEventEnabled(PlayerEvent::ZONING)) {