diff options
author | Meji <alvaro.megias@outlook.com> | 2024-07-19 14:44:26 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-19 14:44:26 +0200 |
commit | 1426f58ff007eac2d9719b41f9189d82b733789e (patch) | |
tree | 62616bd2ae6e0c312cc1a403dd515ab4b78c1569 /src/server/game/Handlers | |
parent | 53f0f2e5da3e7e6a9e6fa926e2f51ac8b506caa9 (diff) |
Core/AreaTriggers: Added ActionSet flags for serverside areatriggers (#30072)
Diffstat (limited to 'src/server/game/Handlers')
-rw-r--r-- | src/server/game/Handlers/MiscHandler.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/server/game/Handlers/MiscHandler.cpp b/src/server/game/Handlers/MiscHandler.cpp index 7e6512fab8c..3cf1d49221a 100644 --- a/src/server/game/Handlers/MiscHandler.cpp +++ b/src/server/game/Handlers/MiscHandler.cpp @@ -509,6 +509,14 @@ void WorldSession::HandleAreaTriggerOpcode(WorldPackets::AreaTrigger::AreaTrigge if (sScriptMgr->OnAreaTrigger(player, atEntry, packet.Entered)) return; + if (atEntry->AreaTriggerActionSetID) + { + if (packet.Entered) + player->UpdateCriteria(CriteriaType::EnterAreaTriggerWithActionSet, atEntry->AreaTriggerActionSetID); + else + player->UpdateCriteria(CriteriaType::LeaveAreaTriggerWithActionSet, atEntry->AreaTriggerActionSetID); + } + if (player->IsAlive() && packet.Entered) { // not using Player::UpdateQuestObjectiveProgress, ObjectID in quest_objectives can be set to -1, areatrigger_involvedrelation then holds correct id |