aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/GarrisonHandler.cpp
diff options
context:
space:
mode:
authorAqua Deus <95978183+aquadeus@users.noreply.github.com>2025-11-08 21:39:32 +0100
committerGitHub <noreply@github.com>2025-11-08 21:39:32 +0100
commitafb2a1151c97e58031540cfe59e36604e332ecb6 (patch)
treeac85e3d549eeb30130abdc97ebdc2aac59e15bd4 /src/server/game/Handlers/GarrisonHandler.cpp
parentb1b2d7955729c115da759e0bcb1e23eae744ebd4 (diff)
Core/Garrison: Always send response to GetGarrisonInfo, even if no garrison exists (#31336)
Diffstat (limited to 'src/server/game/Handlers/GarrisonHandler.cpp')
-rw-r--r--src/server/game/Handlers/GarrisonHandler.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/server/game/Handlers/GarrisonHandler.cpp b/src/server/game/Handlers/GarrisonHandler.cpp
index ef725a3cd39..a0a044c5236 100644
--- a/src/server/game/Handlers/GarrisonHandler.cpp
+++ b/src/server/game/Handlers/GarrisonHandler.cpp
@@ -22,8 +22,13 @@
void WorldSession::HandleGetGarrisonInfo(WorldPackets::Garrison::GetGarrisonInfo& /*getGarrisonInfo*/)
{
+ WorldPackets::Garrison::GetGarrisonInfoResult garrisonInfo;
+ garrisonInfo.FactionIndex = Garrison::GetFaction(_player->GetTeam());
+
if (Garrison* garrison = _player->GetGarrison())
- garrison->SendInfo();
+ garrison->BuildInfoPacket(garrisonInfo.Garrisons.emplace_back());
+
+ SendPacket(garrisonInfo.Write());
}
void WorldSession::HandleGarrisonPurchaseBuilding(WorldPackets::Garrison::GarrisonPurchaseBuilding& garrisonPurchaseBuilding)