mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-04-21 08:17:34 +00:00
changelog for 5.0.0-ALPHA2
[ci skip]
This commit is contained in:
parent
07786dc4bc
commit
c15c59ae0d
@ -305,3 +305,117 @@ Again, it's acknowledged this is rather more cumbersome than it should be, but t
|
||||
- The following classes have been added:
|
||||
- `pocketmine\world\format\io\GlobalBlockStateHandlers`
|
||||
- `pocketmine\world\format\io\GlobalItemDataHandlers`
|
||||
|
||||
# 5.0.0-ALPHA2
|
||||
Released 14th July 2022.
|
||||
|
||||
## Core
|
||||
- Reduced memory usage of the server on startup.
|
||||
- Fixed error spam when loading item frames without items in them.
|
||||
|
||||
## Gameplay
|
||||
### Blocks
|
||||
- Added the following new blocks:
|
||||
- Cakes with Candle & Dyed Candle
|
||||
- Candle & Dyed Candle
|
||||
- Cartography Table (not currently usable due to maps not being implemented)
|
||||
- Copper block (random oxidation not yet implemented)
|
||||
- Cut Copper block, stairs and slabs (random oxidation not yet implemented)
|
||||
- Crying Obsidian
|
||||
- Gilded Blackstone
|
||||
- Glow Item Frame
|
||||
- Hanging Roots
|
||||
- Lightning Rod
|
||||
- Netherite Block
|
||||
- Smithing Table
|
||||
- Tinted Glass
|
||||
- Warped Wart Block
|
||||
- Wither Rose
|
||||
|
||||
### Items
|
||||
- Added the following new items:
|
||||
- Honey Bottle
|
||||
- Netherite Axe
|
||||
- Netherite Boots
|
||||
- Netherite Chestplate
|
||||
- Netherite Helmet
|
||||
- Netherite Ingot
|
||||
- Netherite Leggings
|
||||
- Netherite Pickaxe
|
||||
- Netherite Scrap
|
||||
- Netherite Shovel
|
||||
- Netherite Sword
|
||||
|
||||
## API
|
||||
### `pocketmine\block`
|
||||
- Dependency between `BlockFactory` and `VanillaBlocks` has been inverted.
|
||||
- Now, blocks are defined in `VanillaBlocks`, and automatically registered in `BlockFactory`.
|
||||
- Manual registration in `BlockFactory` is still required for custom blocks.
|
||||
- `BlockFactory` now has only one purpose, which is to map internal blockstate IDs to `Block` objects when reading blocks from chunks.
|
||||
- The following new API methods have been added:
|
||||
- `public Block->isFireProofAsItem()`
|
||||
- `public Block->onProjectileHit()`
|
||||
- `public ItemFrame->isGlowing()`
|
||||
- `public ItemFrame->setGlowing()`
|
||||
- The following new classes have been added:
|
||||
- `BaseCake`
|
||||
- `CakeWithCandle`
|
||||
- `CakeWithDyedCandle`
|
||||
- `Candle`
|
||||
- `CartographyTable`
|
||||
- `CopperSlab`
|
||||
- `CopperStairs`
|
||||
- `Copper`
|
||||
- `DyedCandle`
|
||||
- `GildedBlackstone`
|
||||
- `HangingRoots`
|
||||
- `LightningRod`
|
||||
- `SmithingTable`
|
||||
- `WitherRose`
|
||||
- `utils\CandleTrait`
|
||||
- `utils\CopperOxidation`
|
||||
- `utils\CopperTrait`
|
||||
|
||||
### `pocketmine\crafting`
|
||||
- The following enum classes have new members:
|
||||
- `ShapelessRecipeType` has new members `CARTOGRAPHY` and `SMITHING`
|
||||
|
||||
### `pocketmine\data`
|
||||
- `LegacyToStringBidirectionalIdMap` has been reduced to `LegacyToStringIdMap`.
|
||||
- Since we never map from string ID to legacy ID, bidirectional mapping is no longer necessary.
|
||||
- This affects the following subclasses:
|
||||
- `LegacyBiomeIdToStringIdMap`
|
||||
- `LegacyBlockIdToStringIdMap`
|
||||
- `LegacyEntityIdToStringIdMap`
|
||||
- `LegacyItemIdToStringIdMap`
|
||||
- The following internal API methods have been added:
|
||||
- `public LegacyToStringIdMap->add(string $string, int $legacy) : void` - adds a mapping from a custom legacy ID to custom string ID, needed for upgrading old saved data
|
||||
- `public LegacyBlockStateMapper->addMapping(string $stringId, int $intId, int $meta, BlockStateData $stateData) : void` - adds a mapping from legacy block data to a modern blockstate, needed for upgrading old saved data
|
||||
- `public BlockStateData->getState(string $name) : ?Tag`
|
||||
- The following internal API methods have signature changes:
|
||||
- `BlockStateData->__construct()` now accepts `array<string, Tag`> for `$states` instead of `CompoundTag`
|
||||
- `BlockStateData->getStates()` now returns `array<string, Tag>` instead of `CompoundTag` (allows reducing memory usage)
|
||||
- The following classes have been added:
|
||||
- `UnsupportedItemTypeException`
|
||||
|
||||
### `pocketmine\item`
|
||||
- `ItemFactory` has been removed.
|
||||
- Vanilla item registration is now done via `VanillaItems`.
|
||||
- The procedure for registering a custom item is the same as in ALPHA1, minus the `ItemFactory` step.
|
||||
- The following API methods have been added:
|
||||
- `public ArmorTypeInfo->getToughness() : int`
|
||||
- `public ArmorTypeInfo->isFireProof() : bool`
|
||||
- `public Item->isFireProof() : bool`
|
||||
- The following API methods have signature changes:
|
||||
- `ArmorTypeInfo->__construct()` now accepts optional parameters `int $toughness` and `bool $fireProof`
|
||||
- The following classes have been added:
|
||||
- `HoneyBottle`
|
||||
- The following enums have new members:
|
||||
- `ToolTier` has new member `NETHERITE`
|
||||
|
||||
### `pocketmine\world`
|
||||
- The following API methods have signature changes:
|
||||
- `SubChunk->__construct()` parameter `$blocks` has been renamed to `$blockLayers`.
|
||||
- The following classes have been added:
|
||||
- `CopperWaxApplySound`
|
||||
- `CopperWaxRemoveSound`
|
||||
|
Loading…
x
Reference in New Issue
Block a user