From 84156829a7656d9865c25480c7b6209f5c26fe2f Mon Sep 17 00:00:00 2001 From: Alex King <89047260+Kinglykrab@users.noreply.github.com> Date: Sun, 12 Feb 2023 23:25:42 -0500 Subject: [PATCH] [Quest API] (Performance) Check event exists before export and execute EVENT_WARP (#2907) # Notes - Parse this event optionally instead of always doing so. --- zone/cheat_manager.cpp | 39 ++++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/zone/cheat_manager.cpp b/zone/cheat_manager.cpp index cd6af2fb3..a53583d35 100644 --- a/zone/cheat_manager.cpp +++ b/zone/cheat_manager.cpp @@ -44,13 +44,17 @@ void CheatManager::CheatDetected(CheatTypes type, glm::vec3 position1, glm::vec3 RecordPlayerEventLogWithClient(m_target, PlayerEvent::POSSIBLE_HACK, PlayerEvent::PossibleHackEvent{.message = message}); LogCheat(fmt::runtime(message)); - std::string export_string = fmt::format( - "{} {} {}", - position1.x, - position1.y, - position1.z - ); - parse->EventPlayer(EVENT_WARP, m_target, export_string, 0); + + if (parse->PlayerHasQuestSub(EVENT_WARP)) { + const auto& export_string = fmt::format( + "{} {} {}", + position1.x, + position1.y, + position1.z + ); + + parse->EventPlayer(EVENT_WARP, m_target, export_string, 0); + } } break; case MQWarpAbsolute: @@ -68,14 +72,19 @@ void CheatManager::CheatDetected(CheatTypes type, glm::vec3 position1, glm::vec3 ); RecordPlayerEventLogWithClient(m_target, PlayerEvent::POSSIBLE_HACK, PlayerEvent::PossibleHackEvent{.message = message}); LogCheat(fmt::runtime(message)); - std::string export_string = fmt::format( - "{} {} {}", - position1.x, - position1.y, - position1.z - ); - parse->EventPlayer(EVENT_WARP, m_target, export_string, 0); - m_time_since_last_warp_detection.Start(2500); + + if (parse->PlayerHasQuestSub(EVENT_WARP)) { + const auto& export_string = fmt::format( + "{} {} {}", + position1.x, + position1.y, + position1.z + ); + + parse->EventPlayer(EVENT_WARP, m_target, export_string, 0);; + } + + m_time_since_last_warp_detection.Start(2500) } break; case MQWarpShadowStep: