From 23d612f1af73e84f3dc26844d64df9565551fe54 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 29 Aug 2025 18:49:08 +0100 Subject: [PATCH] Suggested additions --- changelogs/5.33.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/changelogs/5.33.md b/changelogs/5.33.md index dc174cd76..8c61e90bc 100644 --- a/changelogs/5.33.md +++ b/changelogs/5.33.md @@ -81,6 +81,7 @@ Consider using the `mcpe-protocol` directive in `plugin.yml` as a constraint if - `WARPED_CEILING_CENTER_HANGING_SIGN() : CeilingCenterHangingSign` - `WARPED_CEILING_EDGES_HANGING_SIGN() : CeilingEdgesHangingSign` - `WARPED_WALL_HANGING_SIGN() : WallHangingSign` + - `public AgeableTrait->getMaxAge() : int` (included by all growable plant-like blocks, e.g. crops) ### `pocketmine\data\bedrock\block\convert` - A new system for symmetric block serializers and deserializers has been introduced. @@ -116,6 +117,10 @@ Consider using the `mcpe-protocol` directive in `plugin.yml` as a constraint if - All specific blocktype mapping functions in `BlockStateToObjectDeserializer`, e.g. `mapStairs()` - All specific blocktype mapping functions in `BlockObjectToStateSerializer`, e.g. `mapStairs()` +### `pocketmine\item` +- The following hooks have been added: + - `public Item->getPlacementTransaction(Block $blockReplace, Block $blockClicked, int $face, Vector3 $clickVector, ?Player $player = null) : ?BlockTransaction` - allows more complex logic for itemblocks to place blocks, without duplicating their placement conditions (used for hanging signs) + ### `pocketmine\world` - `World->setChunk()` now verifies that blockstate IDs in the provided chunk are all registered in `RuntimeBlockStateRegistry`. This should provide earlier detection for custom block registration errors by plugins.