mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-04-20 16:00:20 +00:00
Release 5.0.0-ALPHA7
This commit is contained in:
parent
de3ba00684
commit
023010370b
@ -737,3 +737,135 @@ Released 19th December 2022.
|
||||
- `EntityLegacyIds` has been removed. Legacy entity IDs found during world loading are now converted via `LegacyEntityIdToStringIdMap`.
|
||||
- All usages of NBT keys now use class constants instead of hardcoded strings (except for an occasional overlooked one).
|
||||
- All members of `BlockTypeTags` now have a `pocketmine:` prefix on the value. This does not affect constant usages.
|
||||
|
||||
# 5.0.0-ALPHA7
|
||||
Released 18th January 2023.
|
||||
|
||||
**This release includes changes from the following releases, which may not be mentioned:**
|
||||
- [4.12.3](https://github.com/pmmp/PocketMine-MP/releases/tag/4.12.3)
|
||||
- [4.12.4](https://github.com/pmmp/PocketMine-MP/releases/tag/4.12.4)
|
||||
- [4.12.5](https://github.com/pmmp/PocketMine-MP/releases/tag/4.12.5)
|
||||
- [4.12.6](https://github.com/pmmp/PocketMine-MP/releases/tag/4.12.6)
|
||||
- [4.12.7](https://github.com/pmmp/PocketMine-MP/releases/tag/4.12.7)
|
||||
- [4.12.8](https://github.com/pmmp/PocketMine-MP/releases/tag/4.12.8)
|
||||
- [4.12.9](https://github.com/pmmp/PocketMine-MP/releases/tag/4.12.9)
|
||||
- [4.12.10](https://github.com/pmmp/PocketMine-MP/releases/tag/4.12.10)
|
||||
- [4.13.0-BETA1](https://github.com/pmmp/PocketMine-MP/releases/tag/4.13.0-BETA1)
|
||||
|
||||
## Fixes
|
||||
- Fixed glowing item frame placement creating the wrong tile, causing invisible items.
|
||||
|
||||
## Localization
|
||||
- Localized disconnect messages are now used in the following cases:
|
||||
- Server full
|
||||
- Player not on the server whitelist
|
||||
- Player on the server ban list
|
||||
- Invalid skin
|
||||
- Invalid username
|
||||
- Kicked using `/kick`
|
||||
- Banned using `/ban`
|
||||
- Failure to find a safe spawn position
|
||||
- Session open, session close and session player name discovery messages are now localized.
|
||||
- All permissions now have localized descriptions. These are not currently used by PocketMine-MP, but may be useful for plugins.
|
||||
|
||||
## Gameplay
|
||||
### Worlds
|
||||
- Added support for 3D biomes. This isn't used by PocketMine-MP yet, but is necessary to be able to fully load 1.18 worlds.
|
||||
|
||||
### Blocks
|
||||
- Added the following new blocks:
|
||||
- Chain
|
||||
- Sculk
|
||||
|
||||
### Items
|
||||
- Added the following new items:
|
||||
- Eye Drops (from Education Edition)
|
||||
- Antidote (from Education Edition)
|
||||
- Elixir (from Education Edition)
|
||||
- Tonic (from Education Edition)
|
||||
|
||||
## API
|
||||
### Overview
|
||||
- Biome-related APIs have changed to accommodate 3D biomes.
|
||||
- Disconnect-related APIs have changed to accommodate localized disconnect messages.
|
||||
- New, more powerful chat formatting API introduced to `PlayerChatEvent`.
|
||||
- Glowing item frames moved to a separate block type instead of being a property of regular item frames (due to technical limitations).
|
||||
|
||||
### `pocketmine\block`
|
||||
- The following API methods have been removed:
|
||||
- `ItemFrame->isGlowing() : bool`
|
||||
- `ItemFrame->setGlowing(bool $glowing) : void`
|
||||
- The following new API methods have been added:
|
||||
- `public static VanillaBlocks::GLOWING_ITEM_FRAME() : ItemFrame`
|
||||
- The following constants have been added:
|
||||
- `BlockTypeIds::GLOWING_ITEM_FRAME`
|
||||
- `BlockTypeIds::CHAIN`
|
||||
- `BlockTypeIds::SCULK`
|
||||
- The following new classes have been added:
|
||||
- `Chain`
|
||||
- `Sculk`
|
||||
|
||||
### `pocketmine\event\player`
|
||||
- The following API methods have changed signatures:
|
||||
- `PlayerDuplicateLoginEvent->getDisconnectMessage()` now returns `Translatable|string` instead of `string`
|
||||
- `PlayerDuplicateLoginEvent->setDisconnectMessage()` now accepts `Translatable|string` instead of `string`
|
||||
- `PlayerKickEvent->getReason()` now returns `Translatable|string` instead of `string`
|
||||
- `PlayerKickEvent->setReason()` now accepts `Translatable|string` instead of `string`
|
||||
- `PlayerLoginEvent->getKickMessage()` now returns `Translatable|string` instead of `string`
|
||||
- `PlayerLoginEvent->setKickMessage()` now accepts `Translatable|string` instead of `string`
|
||||
- `PlayerPreLoginEvent->getFinalKickMessage()` now returns `Translatable|string` instead of `string`
|
||||
- `PlayerPreLoginEvent->getKickMessage()` now returns `Translatable|string|null` instead of `string|null`
|
||||
- `PlayerPreLoginEvent->setKickReason()` now accepts `Translatable|string` for the `$message` parameter instead of `string`
|
||||
- `PlayerQuitEvent->getQuitReason()` now returns `Translatable|string` instead of `string`
|
||||
- The following API methods have been removed:
|
||||
- `PlayerChatEvent->getFormat()` (use `PlayerChatEvent->getChatFormatter()` instead)
|
||||
- `PlayerChatEvent->setFormat()` (use `PlayerChatEvent->setChatFormatter()` instead)
|
||||
- The following new API methods have been added:
|
||||
- `public PlayerChatEvent->setChatFormatter(\pocketmine\player\chat\ChatFormatter $formatter) : void` - sets the chat formatter to be used for this event
|
||||
- `public PlayerChatEvent->getChatFormatter() : \pocketmine\player\chat\ChatFormatter` - returns the chat formatter to be used for this event
|
||||
|
||||
### `pocketmine\item`
|
||||
- The following new classes have been added:
|
||||
- `Medicine`
|
||||
- `MedicineType`
|
||||
- The following new class constants have been added:
|
||||
- `ItemTypeIds::MEDICINE`
|
||||
|
||||
### `pocketmine\network\query`
|
||||
- The following API methods have changed signatures:
|
||||
- `QueryInfo->getPlayerList()` now returns `list<string>` instead of `list<Player>`
|
||||
- `QueryInfo->setPlayerList()` now accepts `list<string>` instead of `list<Player>`
|
||||
|
||||
### `pocketmine\player`
|
||||
- The following API methods have changed signatures:
|
||||
- `Player->kick()` now accepts `Translatable|string` for `$reason` instead of `string` (to allow localized kick messages)
|
||||
- `Player->disconnect()` now accepts `Translatable|string` for `$reason` instead of `string` (to allow localized disconnect messages)
|
||||
- `Player->sendJukeboxPopup()` now accepts `Translatable|string` instead of `string, string[]`
|
||||
|
||||
#### `pocketmine\player\chat`
|
||||
- The following new classes have been added:
|
||||
- `ChatFormatter` - interface implemented by chat formatters
|
||||
- `StandardChatFormatter` - formats chat messages in the vanilla Minecraft style
|
||||
- `LegacyRawChatFormatter` - implements the same behaviour previously used by `PlayerChatEvent->setFormat()`
|
||||
|
||||
### `pocketmine\world`
|
||||
- The following API methods have changed signatures:
|
||||
- `World->getBiome()` now accepts `int $x, int $y, int $z` instead of `int $x, int $z`
|
||||
- `World->getBiomeId()` now accepts `int $x, int $y, int $z` instead of `int $x, int $z`
|
||||
- `World->setBiomeId()` now accepts `int $x, int $y, int $z` instead of `int $x, int $z`
|
||||
|
||||
#### `pocketmine\world\format`
|
||||
- The following new API methods have been added:
|
||||
- `public SubChunk->getBiomeArray() : PalettedBlockArray`
|
||||
- The following API methods have changed signatures:
|
||||
- `Chunk->getBiomeId()` now accepts `int $x, int $y, int $z` instead of `int $x, int $z`
|
||||
- `Chunk->setBiomeId()` now accepts `int $x, int $y, int $z` instead of `int $x, int $z`
|
||||
- `Chunk->__construct()` no longer accepts `BiomeArray` as a parameter (contained in each subchunk instead)
|
||||
- `SubChunk->__construct()` now accepts `int $emptyBlockId, list<PalettedBlockArray> $blocks, PalettedBlockArray $biomes, ?LightArray $blockLight, ?LightArray $skyLight` instead of `int, list<PalettedBlockArray>, ?LightArray, ?LightArray`
|
||||
- The following classes have been removed
|
||||
- `BiomeArray`
|
||||
|
||||
## Internals
|
||||
- Built-in commands now declare their names inside the class constructor, rather than accepting them as parameters. This improves code consistency.
|
||||
- `NetworkSession` disconnect APIs now accept `Translatable|string` instead of `string` to allow localized disconnect messages.
|
||||
- All external usages of `KnownTranslationKeys` are now removed. All localized messages are now sent using `Translatable` objects (usually from `KnownTranslationFactory`).
|
||||
|
@ -32,7 +32,7 @@ use function str_repeat;
|
||||
final class VersionInfo{
|
||||
public const NAME = "PocketMine-MP";
|
||||
public const BASE_VERSION = "5.0.0-ALPHA7";
|
||||
public const IS_DEVELOPMENT_BUILD = true;
|
||||
public const IS_DEVELOPMENT_BUILD = false;
|
||||
public const BUILD_CHANNEL = "alpha";
|
||||
|
||||
private function __construct(){
|
||||
|
Loading…
x
Reference in New Issue
Block a user