f6c9bf5cd1
Merge branch 'next-minor' into next-major
2022-07-20 20:55:33 +01:00
2d2df22ee7
Ignore some PHPStan errors
2022-07-20 20:47:34 +01:00
2940547026
Eliminate repeated calls to Position->getWorld()
...
as well as improving readability, it also improves performance in some areas.
2022-07-20 20:44:05 +01:00
24e72ec109
ContainerTrait: improve performance of block destroy hook
...
this was creating useless vector3s for every iteration, as well as repeatedly invoking Position->getWorld() for no reason.
2022-07-20 20:39:37 +01:00
47adcf763d
LegacyStringToItemParser: special-case air, which the item deserializer doesn't recognize
2022-07-20 20:20:14 +01:00
67682cbf27
Added chorus plant and flower
2022-07-20 20:19:36 +01:00
c1acf44337
Implement cauldrons ( #5163 )
...
the following things are currently not implemented:
- particle/sound effects when an entity extinguishes itself
- particle/sound effects when mixing different stuff in a cauldron
- powder snow cauldron
both of these things are contingent on #5169 , but for the time being, the PR is functionally complete and I want to move on to something else without being stalled by the particle+sound problem (which I haven't yet decided how to solve).
2022-07-20 16:12:58 +01:00
466307a43f
Attempting to reduce IDE performance hit of working in StringToItemParser
2022-07-20 15:46:43 +01:00
44c4118080
fix CS again
2022-07-20 15:22:47 +01:00
c4f85e526b
Bump shivammathur/setup-php from 2.20.0 to 2.21.0 ( #5181 )
...
Bumps [shivammathur/setup-php](https://github.com/shivammathur/setup-php ) from 2.20.0 to 2.21.0.
- [Release notes](https://github.com/shivammathur/setup-php/releases )
- [Commits](https://github.com/shivammathur/setup-php/compare/2.20.0...2.21.0 )
---
updated-dependencies:
- dependency-name: shivammathur/setup-php
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-20 15:19:21 +01:00
6cee428287
Bump docker/build-push-action from 3.0.0 to 3.1.0 ( #5182 )
...
Bumps [docker/build-push-action](https://github.com/docker/build-push-action ) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases )
- [Commits](https://github.com/docker/build-push-action/compare/v3.0.0...v3.1.0 )
---
updated-dependencies:
- dependency-name: docker/build-push-action
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-20 15:18:38 +01:00
bcba064d69
Bump build/php from 1110349
to f292501
( #5180 )
...
Bumps [build/php](https://github.com/pmmp/php-build-scripts ) from `1110349` to `f292501`.
- [Release notes](https://github.com/pmmp/php-build-scripts/releases )
- [Commits](11103498ca...f292501a70
)
---
updated-dependencies:
- dependency-name: build/php
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-20 15:16:34 +01:00
2fa92e5e02
erge branch 'next-minor' into next-major
2022-07-19 20:36:09 +01:00
dbc0b9634b
Merge branch 'stable' into next-minor
2022-07-19 20:35:47 +01:00
86647683bc
fix CS again
2022-07-19 20:35:34 +01:00
fa201b081c
Added spore blossoms
...
I got tired of the flood of warning messages every time someone joined the dev server...
2022-07-19 20:28:12 +01:00
de3bbb71fa
Merge branch 'next-minor' into next-major
2022-07-19 20:20:30 +01:00
040516054f
Merge branch 'stable' into next-minor
2022-07-19 20:20:10 +01:00
64f0e58e60
Merge branch 'stable' of github.com:pmmp/PocketMine-MP into stable
2022-07-19 20:17:15 +01:00
62f21516d1
build/generate-registry-annotations.php: allow processing a single file
...
this is useful for automatically invoking the script via a PhpStorm file watcher.
2022-07-19 20:17:07 +01:00
c553f7cf06
build/generate-registry-annotations.php: write to stderr on error
2022-07-19 20:15:44 +01:00
eccfb3bbe2
World: fix borked check
2022-07-19 17:59:53 +01:00
87b840ff97
Added a hack to allow tiles to trigger client-side render updates on blocks without actually changing the block
...
Bedrock block entity updates don't directly trigger block rendering
updates. This is a problem when the block entity data affects the
block's appearance directly (e.g. cauldron water colour, flower pot
contents), because it means changing them won't directly result in a
client-side render update.
This hack allows tiles to spoof block updates without actually changing
the server-side block, keeping the internals and API clean of random
shitbox workarounds.
fixes #5174
fixes #4944
2022-07-19 17:47:46 +01:00
f64e306fb8
Make BlockIdMetaUpgrader API less dumb
...
the old impl prevented registering more than one meta -> state mapping since the legacy numeric ID map would throw an exception if attempting to map the same ID more than once.
2022-07-19 16:21:56 +01:00
9a8902d1fe
LegacyToStringMap: don't throw if the existing mapping is the same as the one we want to register
...
this was making it inconvenient for plugins to use BlockIdMetaUpgrader->addMapping(), because the block legacy ID map contains IDs up to 1.16, but the table of mapped 1.12 blockstates only goes up to ... well ... 1.12. This left a gap of several versions' blocks unable to be mapped.
2022-07-19 16:08:05 +01:00
b36b65927c
BlockDataUpgrader: expose BlockIdMetaUpgrader via getter
2022-07-19 16:02:35 +01:00
afaf9dbc88
Rename LegacyBlockStateMapper -> BlockIdMetaUpgrader
...
this more accurately describes what it's used for.
2022-07-19 15:32:08 +01:00
b0a492c063
Move simple block (de)serializer registrations into their own functions
2022-07-18 18:47:30 +01:00
6d4279671e
A giant hack to cut down code needed for runtime block serialization by 50%
...
this also avoids repeated information and inconsistencies.
2022-07-18 18:25:41 +01:00
cf34f88a67
Make Block::decodeState() and encodeState() more codegen-friendly
2022-07-18 15:48:03 +01:00
b8d1b00985
phpstan fail very sad :(
2022-07-18 15:26:14 +01:00
8660dfe576
Generate traits for runtime enum serialization instead of helper classes
2022-07-18 15:16:33 +01:00
172bd9a129
...
2022-07-17 21:24:27 +01:00
012b668537
Avoid bogus assumptions about block and item NBT on tiles
2022-07-17 21:23:41 +01:00
fec89b7803
Lava burns entities for only 8 seconds in Bedrock ( #5173 )
2022-07-17 20:50:15 +01:00
4f2f9b4352
Block::readStateFromWorld() now returns the block object that should be used for the target position
...
this enables changing the block type completely if the situation calls for it.
2022-07-16 20:04:08 +01:00
b3f8b5ff37
Fix CS
2022-07-16 20:01:29 +01:00
81edb1bed4
GlassBottle: implement filling using API changes from 4afd3dcabf
...
closes #4827
2022-07-16 20:00:43 +01:00
d0ff6d2e36
Enable various types of interaction to return items to the player, without needing to have a bunch of boilerplate creative mode and held item checks
...
it became glaringly obvious that this was needed because of #4827 and #4868 .
this is further needed with the addition of cauldrons.
2022-07-16 19:50:33 +01:00
4afd3dcabf
Merge branch 'next-minor' into next-major
2022-07-16 15:11:19 +01:00
4e3964ffce
Armor: added clearCustomColor()
2022-07-16 15:10:07 +01:00
c7f5215a51
5.0.0-ALPHA3 is next
2022-07-14 22:54:29 +01:00
66f2116e57
Release 5.0.0-ALPHA2
5.0.0-ALPHA2
2022-07-14 22:54:28 +01:00
c15c59ae0d
changelog for 5.0.0-ALPHA2
...
[ci skip]
2022-07-14 22:52:07 +01:00
07786dc4bc
RuntimeDataWriter: fixed doc comment
2022-07-14 22:51:12 +01:00
259f44e57c
Merge branch 'next-minor' into next-major
2022-07-14 22:05:04 +01:00
93254523e6
Merge branch 'stable' into next-minor
2022-07-14 22:04:38 +01:00
2b61c025c2
Workaround items in blockentity NBT not being processed correctly in 1.19.10
...
closes #5154
this hack sends only the bare essential data to create the tiles in LevelChunkPacket,
and then separately sending the full tile data using BlockActorDataPacket afterwards.
This is necessary because the client doesn't handle items correctly in NBT when chunks are sent without using the SubChunkRequest system.
In 4.6 this is observed with incorrect items shown in item frames; in 5.0 it's seen with items simply not showing up at all (difference due to modernization of the serialization format in 5.0).
2022-07-14 21:54:01 +01:00
e5804df24b
Merge branch 'next-minor' into next-major
2022-07-14 20:59:13 +01:00
e00f8e3a32
Merge branch 'stable' into next-minor
2022-07-14 20:59:06 +01:00