425 Commits

Author SHA1 Message Date
Dries C
5e830c7320
Protocol changes for 1.21.80 (#6687)
* Bedrock 1.21.80 support

* Update bedrock-data

* Add required tags to models

* Fixed biome data loading

* Support newest world format
apparently I messed up the blockstate data version last time around... it hasn't changed since 1.21.60

* always CS has to complain...

* Sync with release versions

* Ready 5.28.0 release

* this might help...

---------

Co-authored-by: Dylan T. <dktapps@pmmp.io>
2025-05-09 15:29:05 +01:00
Dries C
687112f4cd
5.27.0, Bedrock 1.21.70 support (#6665)
Co-authored-by: Dylan K. Taylor <dktapps@pmmp.io>
2025-03-27 15:48:19 +00:00
Dylan K. Taylor
c2f8e9365b
BlockStateToObjectDeserializer: check that the returned state is actually registered
if not, this will cause random crashes in core code, which assumes that state IDs found on runtime chunk memory are valid and registered.

this problem exists in other places too, and probably requires a rethink of how we're dealing with this, but for now, this will do as a band-aid.
2025-03-15 20:53:49 +00:00
Dylan K. Taylor
7cfaf04b87
stfu 2025-03-14 16:10:56 +00:00
Dylan K. Taylor
d9e0e51e14
Reduce code duplication in copper block serialization handling 2025-03-14 16:08:06 +00:00
pmmp-admin-bot[bot]
19425e35ea Merge 'stable' into 'minor-next'
Automatic merge performed by: https://github.com/pmmp/RestrictedActions/actions/runs/13488997706
2025-02-24 01:26:36 +00:00
Dylan K. Taylor
3df2bdb879
Fixed door facing
this was broken in 1.21.60 update.

should've known better to expect a blockstate upgrade to mean a
blockstate fix...
2025-02-24 01:04:52 +00:00
Dylan K. Taylor
fd04894a7b
Merge branch 'stable' of github.com:pmmp/PocketMine-MP into minor-next 2025-02-16 23:18:34 +00:00
Dylan K. Taylor
d2d6a59c72
ItemDeserializer: fix doc comment typo 2025-02-16 22:52:11 +00:00
Dylan K. Taylor
788ee9a008
Allow overriding deserializers for block and item IDs
there's no technical reason not to support this, since it doesn't violate any assumptions and the type returned is a base anyway.

this enables implementing stuff like snow cauldrons in a plugin, which previously would require reflection due to the minecraft:cauldron deserializer being registered already.
it also enables overriding IDs to map to custom blocks, which might be useful for overriding some functionality (although this is inadvisable - and won't alter the usage of stuff like VanillaBlocks::WHATEVER()).

we do *not* allow overriding serializers, since type IDs are expected to be paired to block implementations, and allowing them to be reassigned could lead to crashes if the new class was incorrect. So the correct approach for overriding nether portals would be to create a custom type ID as if you were adding a fully custom item. This will also allow other plugins to distinguish between your implementation and the built-in one.
2025-02-16 22:49:40 +00:00
Dylan K. Taylor
03e4b53ac4
BedrockDataFiles: added constants for folders as well as files
we probably should have it recurse too, but this is an easy win.
2025-02-16 20:57:16 +00:00
Dries C
91ac64783f
Bedrock 1.21.60 (#6627)
Co-authored-by: Dylan K. Taylor <dktapps@pmmp.io>
2025-02-16 20:51:53 +00:00
pmmp-admin-bot[bot]
51cb1875bb Merge 'stable' into 'minor-next'
Automatic merge performed by: https://github.com/pmmp/RestrictedActions/actions/runs/12839491049
2025-01-18 01:19:32 +00:00
Dries C
0b60a47cde
Noteblock instrument changes from 1.21.50 (#6596)
Good thing this isn't saved on disk :|
2025-01-17 19:56:19 +00:00
Dylan K. Taylor
cd59e272bc
PHPStan 2.0 fixes 2025-01-07 22:10:42 +00:00
ipad54
de66d84d29
Implement new 1.20 and 1.21 records (#6572) 2024-12-13 21:10:34 +03:00
ipad54
42094e6768
Implement resin blocks & items (#6571) 2024-12-12 23:21:41 +03:00
ipad54
b341078765
Implement new pale oak blocks (#6570) 2024-12-12 17:53:52 +03:00
Dylan K. Taylor
9a6e258b6c
Merge branch 'stable' of github.com:pmmp/PocketMine-MP into minor-next 2024-12-05 10:13:06 +00:00
Dries C
ba6828c6bd
Release 5.22.0 (Bedrock 1.21.50 support) (#6559)
Co-authored-by: Dylan K. Taylor <dktapps@pmmp.io>
2024-12-04 13:36:52 +00:00
IvanCraft623
f1a3b42620
Implement frost walker enchantment (#5497)
Co-authored-by: Dylan T. <dktapps@pmmp.io>
2024-12-01 19:46:38 +00:00
IvanCraft623
f3763ae691
Implement Recovery compass (#5502)
Co-authored-by: Dylan K. Taylor <dktapps@pmmp.io>
2024-12-01 18:25:45 +00:00
Dylan K. Taylor
12ae8dc03b
Merge branch 'stable' into minor-next 2024-11-25 14:32:30 +00:00
Dylan K. Taylor
5325ecee37
Deal with a whole lot of PHPStan suppressed key casting errors
closes #6534
2024-11-25 14:30:58 +00:00
zSALLAZAR
a5f607138c
Implement Ice Bomb (#5452)
Co-authored-by: Dylan K. Taylor <dktapps@pmmp.io>
2024-11-24 15:01:26 +00:00
ipad54
e77f2c5198
Implemented End Crystal (#4715)
Co-authored-by: Dylan T. <dktapps@pmmp.io>
2024-11-16 17:57:57 +00:00
IvanCraft623
9b58d35516
Implement Goat horns (#5232)
Co-authored-by: ipad54 <63200545+ipad54@users.noreply.github.com>
Co-authored-by: Dylan T. <dktapps@pmmp.io>
2024-11-14 13:57:07 +00:00
Dylan T.
09bf203267
Update RuntimeDataDescriber.php 2024-11-12 22:57:14 +00:00
Dylan K. Taylor
f3cc4a28e1
Easy wins for PHPStan 2.0 support 2024-11-12 22:12:54 +00:00
Dylan T.
9e19391f20
Merge branch 'minor-next' into blockstate-schema-generator-improvements 2024-11-03 14:06:57 +00:00
Dylan T.
c0b74b0341
Update BlockStateUpgrader.php 2024-11-03 14:05:46 +00:00
Dylan K. Taylor
3c96e72f7d
Merge remote-tracking branch 'origin/stable' into minor-next 2024-11-03 14:01:47 +00:00
Dries C
8ef5e737de
Temporary resolve loading old skulls from storage (#6476) 2024-10-27 01:29:34 +01:00
Dries C
4814db4fe7
Assemble 1.21.40 (#6471) 2024-10-25 14:21:51 +01:00
Dylan T.
847f931660
Merge branch 'minor-next' into blockstate-schema-generator-improvements 2024-10-24 17:46:57 +01:00
Dylan K. Taylor
22718c4971
Add support for specialized flattenedProperties in schema format 2024-10-24 16:12:28 +01:00
ipad54
7e343617b9
Rename ICopper to CopperMaterial (#6470) 2024-10-23 11:34:42 +01:00
Dylan K. Taylor
d945cbf517
Merge remote-tracking branch 'origin/minor-next' into blockstate-schema-generator-improvements 2024-10-17 21:00:11 +01:00
Dylan K. Taylor
3ef7001d8e
Merge branch 'stable' into blockstate-schema-generator-improvements 2024-10-17 20:55:34 +01:00
IvanCraft623
4e6b34f573
Implement new 1.21 copper blocks (#6366)
Added the following new blocks:
- All types of Copper Bulb
- All types of Copper Door
- All types of Copper Trapdoor
- All types of Chiseled Copper
- All types of Copper Grate
2024-09-24 21:25:10 -05:00
github-actions
a4a07a8e5a Merge 'stable' into 'minor-next'
Automatic merge performed by: https://github.com/pmmp/RestrictedActions/actions/runs/10986731877
2024-09-23 02:36:00 +00:00
Dries C
60cac18104
Assemble 1.21.30 (#6453) 2024-09-20 18:47:25 -05:00
Dylan T.
5241118f0b
Merge branch 'minor-next' into blockstate-schema-generator-improvements 2024-08-19 19:05:08 +01:00
IvanCraft623
92f380bb9c
Merge branch 'stable' into sync-minor-next 2024-08-17 11:17:48 -05:00
Dries C
0f365886e0
Assemble 1.21.20 (#6423)
Co-authored-by: Dylan T. <dktapps@pmmp.io>
Co-authored-by: IvanCraft623 <ivancraft623@gmail.com>
2024-08-16 11:26:49 +01:00
Dylan K. Taylor
ee17ac5246
Merge branch 'stable' of github.com:pmmp/PocketMine-MP into minor-next 2024-08-09 13:32:07 +01:00
zSALLAZAR
c4a2b6494d
Implement Aqua Affinity enchantment (#6408) 2024-08-06 09:12:47 -05:00
IvanCraft623
2aa64dc15e
Simplify phpstan-doc type hint for better readability 2024-08-05 17:13:23 -05:00
Dylan K. Taylor
d0d7a995fb
Add a TODO in BlockStateUpgrader
this issue can be worked around by adding a dummy schema, but it's a bit clunky.
2024-08-05 22:38:32 +01:00
Dylan K. Taylor
be2437ac6e
Support for flattening TAG_Byte and TAG_Int properties
this allows optimisation in upcoming versions.
2024-08-05 22:38:02 +01:00