From 7df342b41c81d6a412a07fa902cc324e8bae9711 Mon Sep 17 00:00:00 2001 From: ZhengPeiRu21 <98835050+ZhengPeiRu21@users.noreply.github.com> Date: Fri, 1 Jul 2022 14:24:01 -0600 Subject: [PATCH] fix(Scripts): Midsummer Music Range (#12248) * fix(Scripts): Midsummer Music Range * Refactor iterating nearby players Co-authored-by: Nefertumm * Update go_scripts.cpp * Update go_scripts.cpp Co-authored-by: Nefertumm --- src/server/scripts/World/go_scripts.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/server/scripts/World/go_scripts.cpp b/src/server/scripts/World/go_scripts.cpp index 2109d7265..d14a994e5 100644 --- a/src/server/scripts/World/go_scripts.cpp +++ b/src/server/scripts/World/go_scripts.cpp @@ -821,19 +821,19 @@ public: if (!IsHolidayActive(HOLIDAY_FIRE_FESTIVAL)) break; - Map::PlayerList const& players = me->GetMap()->GetPlayers(); - for (Map::PlayerList::const_iterator itr = players.begin(); itr != players.end(); ++itr) + std::list targets; + Acore::AnyPlayerInObjectRangeCheck check(me, me->GetVisibilityRange(), false); + Acore::PlayerListSearcherWithSharedVision searcher(me, targets, check); + Cell::VisitWorldObjects(me, searcher, me->GetVisibilityRange()); + for (Player* player : targets) { - if (Player* player = itr->GetSource()) + if (player->GetTeamId() == TEAM_HORDE) { - if (player->GetTeamId() == TEAM_HORDE) - { - me->PlayDirectMusic(EVENTMIDSUMMERFIREFESTIVAL_H, player); - } - else - { - me->PlayDirectMusic(EVENTMIDSUMMERFIREFESTIVAL_A, player); - } + me->PlayDirectMusic(EVENTMIDSUMMERFIREFESTIVAL_H, player); + } + else + { + me->PlayDirectMusic(EVENTMIDSUMMERFIREFESTIVAL_A, player); } }