diff options
author | Shauren <shauren.trinity@gmail.com> | 2015-05-11 18:23:43 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2015-05-11 18:23:43 +0200 |
commit | 9d4c568596fbfe911f0edb0a92d75b175ad900af (patch) | |
tree | 3929f57e05516380953a25829c30376ec39291a4 /src/server/game/Garrison/Garrison.h | |
parent | 3c79914e7b01a44bd5b34f7728e5cb575fa48723 (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.h | 8 |
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; |