TrinityCore
Loading...
Searching...
No Matches
GarrisonHandler.cpp
Go to the documentation of this file.
1/*
2 * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the
6 * Free Software Foundation; either version 2 of the License, or (at your
7 * option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#include "WorldSession.h"
19#include "Garrison.h"
20#include "GarrisonPackets.h"
21#include "Player.h"
22
24{
27
28 if (Garrison* garrison = _player->GetGarrison())
29 garrison->BuildInfoPacket(garrisonInfo.Garrisons.emplace_back());
30
31 SendPacket(garrisonInfo.Write());
32}
33
35{
37 return;
38
39 if (Garrison* garrison = _player->GetGarrison())
40 garrison->PlaceBuilding(garrisonPurchaseBuilding.PlotInstanceID, garrisonPurchaseBuilding.BuildingID);
41}
42
44{
46 return;
47
48 if (Garrison* garrison = _player->GetGarrison())
49 garrison->CancelBuildingConstruction(garrisonCancelConstruction.PlotInstanceID);
50}
51
53{
54 if (Garrison* garrison = _player->GetGarrison())
55 garrison->SendBlueprintAndSpecializationData();
56}
57
59{
60 if (Garrison* garrison = _player->GetGarrison())
61 garrison->SendMapData(_player);
62}
@ UNIT_NPC_FLAG_NONE
@ UNIT_NPC_FLAG_2_GARRISON_ARCHITECT
GarrisonFactionIndex GetFaction() const
Definition Garrison.cpp:302
Creature * GetNPCIfCanInteractWith(ObjectGuid const &guid, NPCFlags npcFlags, NPCFlags2 npcFlags2) const
Definition Player.cpp:1903
Garrison * GetGarrison() const
Definition Player.h:2883
Team GetTeam() const
Definition Player.h:2423
void HandleGarrisonGetMapData(WorldPackets::Garrison::GarrisonGetMapData &garrisonGetMapData)
void HandleGetGarrisonInfo(WorldPackets::Garrison::GetGarrisonInfo &getGarrisonInfo)
void HandleGarrisonRequestBlueprintAndSpecializationData(WorldPackets::Garrison::GarrisonRequestBlueprintAndSpecializationData &garrisonRequestBlueprintAndSpecializationData)
void HandleGarrisonPurchaseBuilding(WorldPackets::Garrison::GarrisonPurchaseBuilding &garrisonPurchaseBuilding)
void HandleGarrisonCancelConstruction(WorldPackets::Garrison::GarrisonCancelConstruction &garrisonCancelConstruction)
void SendPacket(WorldPacket const *packet, bool forced=false)
Send a packet to the client.
Player * _player