From 3ff57559e36d3254c64e334fbe3bdd47398fe16f Mon Sep 17 00:00:00 2001 From: x12xx12x <44411062+12xx12@users.noreply.github.com> Date: Thu, 2 Dec 2021 00:31:10 +0100 Subject: ItemHandler initialisation is a constant expression (#5344) * Transition to non-pointer item handler * That is my destructor - I decide when I leave this world * I declare your destruction private and you final --- src/Items/ItemSeeds.h | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'src/Items/ItemSeeds.h') diff --git a/src/Items/ItemSeeds.h b/src/Items/ItemSeeds.h index 0bb9afbb9..821afb443 100644 --- a/src/Items/ItemSeeds.h +++ b/src/Items/ItemSeeds.h @@ -15,7 +15,7 @@ class cItemSeedsHandler: public: - cItemSeedsHandler(int a_ItemType): + constexpr cItemSeedsHandler(int a_ItemType): Super(a_ItemType) { @@ -25,7 +25,7 @@ public: - virtual bool CommitPlacement(cPlayer & a_Player, const cItem & a_HeldItem, const Vector3i a_PlacePosition, const eBlockFace a_ClickedBlockFace, const Vector3i a_CursorPosition) override + virtual bool CommitPlacement(cPlayer & a_Player, const cItem & a_HeldItem, const Vector3i a_PlacePosition, const eBlockFace a_ClickedBlockFace, const Vector3i a_CursorPosition) const override { // Only allow planting seeds from the top side of the block: if (a_ClickedBlockFace != BLOCK_FACE_TOP) @@ -54,12 +54,20 @@ public: - virtual bool IsPlaceable(void) override + virtual bool IsPlaceable(void) const override { return true; } + +protected: + ~cItemSeedsHandler() = default; } ; +class cItemSimpleSeedsHandler final: + public cItemSeedsHandler +{ + using cItemSeedsHandler::cItemSeedsHandler; +}; -- cgit v1.2.3