Dylan K. Taylor
3724479be3
InGamePacketHandler: improve performance of input flag resolving
2022-07-24 20:33:35 +01:00
XenialDan
eb916fe43d
Use a falling block entity to improve client side performance of FloatingTextParticle ( #4714 )
...
Performance tests show that this has a considerable client-side performance advantage over using players. In my local tests, using 1000 floating texts in a 10x10x10 area, I observed an FPS increase from 1.5 to 8.0.
2022-07-24 18:22:21 +01:00
Dylan K. Taylor
5e3b3a0700
Fix assert spam on debug clients
2022-07-24 17:51:02 +01:00
Dylan K. Taylor
e3640907ba
fix PHPStan
2022-07-24 00:14:17 +01:00
Dylan K. Taylor
d9b050fb68
First look at using (very) basic tags for dynamic block properties
...
this allows plugins to, for example, add their own custom dirt-like blocks which support having flowers placed on them.
2022-07-24 00:08:02 +01:00
Dylan K. Taylor
817591910b
Fix CS
2022-07-23 21:01:49 +01:00
Dylan K. Taylor
6a2315a63d
Accept BlockTypeInfo in Block constructor, instead of BlockBreakInfo
...
this will allow more stuff to be passed via the constructor without having to change dozens of classes to do it.
2022-07-23 20:42:54 +01:00
Dylan K. Taylor
89b784734e
Fixed crimson/warped planks being usable as furnace fuel
2022-07-23 18:45:57 +01:00
Dylan K. Taylor
b751207969
Added missing blast resistance to Crying Obsidian
2022-07-23 18:24:09 +01:00
Dylan K. Taylor
cffa3b8a72
Reduce BlockBreakInfo code width further by specializing for common tool types
...
this considerably reduces width and makes adding new stuff much less irritating.
2022-07-23 18:21:04 +01:00
Dylan K. Taylor
91e91b1d9f
Reduce code width when tool tiers are given to BlockBreakInfo
...
this is the majority of uses of harvest level
2022-07-23 17:56:08 +01:00
Dylan K. Taylor
102406ee79
Added froglights
2022-07-23 17:40:38 +01:00
Dylan K. Taylor
4419161a49
Updated consistency check
2022-07-23 17:39:26 +01:00
Dylan K. Taylor
38e495babf
Added mangrove roots and muddy mangrove roots
2022-07-23 17:20:23 +01:00
Dylan K. Taylor
17635e770b
.................
2022-07-23 16:49:58 +01:00
Dylan K. Taylor
b13f333b2e
Added mud and packed mud
2022-07-23 16:40:46 +01:00
Dylan K. Taylor
a7313ed9d9
Added rooted dirt
2022-07-23 16:12:17 +01:00
Dylan K. Taylor
e10a624444
4.6.2 is next
2022-07-22 19:35:10 +01:00
Dylan K. Taylor
b20e04539d
Release 4.6.1
4.6.1
2022-07-22 19:34:57 +01:00
Dylan K. Taylor
4852f8029a
AsyncTask: update documentation
2022-07-21 23:26:46 +01:00
Dylan K. Taylor
bedf79e2cd
BaseWorldProvider: don't crash the server when encountering an unknown block
2022-07-21 16:12:27 +01:00
Dylan K. Taylor
f6c9bf5cd1
Merge branch 'next-minor' into next-major
2022-07-20 20:55:33 +01:00
Dylan K. Taylor
2d2df22ee7
Ignore some PHPStan errors
2022-07-20 20:47:34 +01:00
Dylan K. Taylor
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
Dylan K. Taylor
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
Dylan K. Taylor
47adcf763d
LegacyStringToItemParser: special-case air, which the item deserializer doesn't recognize
2022-07-20 20:20:14 +01:00
Dylan K. Taylor
67682cbf27
Added chorus plant and flower
2022-07-20 20:19:36 +01:00
Dylan T
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
Dylan K. Taylor
466307a43f
Attempting to reduce IDE performance hit of working in StringToItemParser
2022-07-20 15:46:43 +01:00
Dylan K. Taylor
44c4118080
fix CS again
2022-07-20 15:22:47 +01:00
dependabot[bot]
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
dependabot[bot]
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
dependabot[bot]
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
Dylan K. Taylor
2fa92e5e02
erge branch 'next-minor' into next-major
2022-07-19 20:36:09 +01:00
Dylan K. Taylor
dbc0b9634b
Merge branch 'stable' into next-minor
2022-07-19 20:35:47 +01:00
Dylan K. Taylor
86647683bc
fix CS again
2022-07-19 20:35:34 +01:00
Dylan K. Taylor
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
Dylan K. Taylor
de3bbb71fa
Merge branch 'next-minor' into next-major
2022-07-19 20:20:30 +01:00
Dylan K. Taylor
040516054f
Merge branch 'stable' into next-minor
2022-07-19 20:20:10 +01:00
Dylan K. Taylor
64f0e58e60
Merge branch 'stable' of github.com:pmmp/PocketMine-MP into stable
2022-07-19 20:17:15 +01:00
Dylan K. Taylor
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
Dylan K. Taylor
c553f7cf06
build/generate-registry-annotations.php: write to stderr on error
2022-07-19 20:15:44 +01:00
Dylan K. Taylor
eccfb3bbe2
World: fix borked check
2022-07-19 17:59:53 +01:00
Dylan K. Taylor
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
Dylan K. Taylor
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
Dylan K. Taylor
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
Dylan K. Taylor
b36b65927c
BlockDataUpgrader: expose BlockIdMetaUpgrader via getter
2022-07-19 16:02:35 +01:00
Dylan K. Taylor
afaf9dbc88
Rename LegacyBlockStateMapper -> BlockIdMetaUpgrader
...
this more accurately describes what it's used for.
2022-07-19 15:32:08 +01:00
Dylan K. Taylor
b0a492c063
Move simple block (de)serializer registrations into their own functions
2022-07-18 18:47:30 +01:00
Dylan K. Taylor
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