aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Garrison/Garrison.h
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2015-05-11 18:23:43 +0200
committerShauren <shauren.trinity@gmail.com>2015-05-11 18:23:43 +0200
commit9d4c568596fbfe911f0edb0a92d75b175ad900af (patch)
tree3929f57e05516380953a25829c30376ec39291a4 /src/server/game/Garrison/Garrison.h
parent3c79914e7b01a44bd5b34f7728e5cb575fa48723 (diff)
Core/Garrisons: Added more building checks and implemented canceling building construction
Diffstat (limited to 'src/server/game/Garrison/Garrison.h')
-rw-r--r--src/server/game/Garrison/Garrison.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/server/game/Garrison/Garrison.h b/src/server/game/Garrison/Garrison.h
index 37712386d0b..1b12ac62263 100644
--- a/src/server/game/Garrison/Garrison.h
+++ b/src/server/game/Garrison/Garrison.h
@@ -62,6 +62,8 @@ class Garrison
public:
struct Building
{
+ bool CanActivate() const;
+
ObjectGuid Guid;
Optional<WorldPackets::Garrison::GarrisonBuildingInfo> PacketInfo;
};
@@ -69,6 +71,9 @@ public:
struct Plot
{
GameObject* CreateGameObject(Map* map, GarrisonFactionIndex faction);
+ void DeleteGameObject(Map* map);
+ void ClearBuildingInfo(Player* owner);
+ void SetBuildingInfo(WorldPackets::Garrison::GarrisonBuildingInfo const& buildingInfo, Player* owner);
WorldPackets::Garrison::GarrisonPlotInfo PacketInfo;
uint32 EmptyGameObjectId = 0;
@@ -90,10 +95,12 @@ public:
GarrisonFactionIndex GetFaction() const;
std::vector<Plot*> GetPlots();
Plot* GetPlot(uint32 garrPlotInstanceId);
+ Plot const* GetPlot(uint32 garrPlotInstanceId) const;
void LearnBlueprint(uint32 garrBuildingId);
void UnlearnBlueprint(uint32 garrBuildingId);
void PlaceBuilding(uint32 garrPlotInstanceId, uint32 garrBuildingId);
+ void CancelBuildingConstruction(uint32 garrPlotInstanceId);
void SendInfo();
void SendRemoteInfo() const;
@@ -106,6 +113,7 @@ private:
Map* FindMap() const;
void InitializePlots();
GarrisonError CheckBuildingPlacement(uint32 garrPlotInstanceId, uint32 garrBuildingId) const;
+ GarrisonError CheckBuildingRemoval(uint32 garrPlotInstanceId) const;
Player* _owner;
GarrSiteLevelEntry const* _siteLevel;
uint32 _followerActivationsRemainingToday;