17091 Commits

Author SHA1 Message Date
Dylan K. Taylor
0a90a5928a
Added TallGrassTrait, remove weirdly specific logic from FortuneDropHelper
this needs to be dealt with before release otherwise we'll be stuck with FortuneDropHelper::grass()
this is the obvious solution and should have been done some time ago - stuff like flammability was already a problem for double tall grass anyway
2023-08-01 12:33:36 +01:00
Dylan K. Taylor
46f24b165a
Rename PlayerMissedSwingEvent -> PlayerMissSwingEvent
all the other events are present tense, so it doesn't make sense for this one to be past tense.
2023-08-01 12:21:39 +01:00
Dylan K. Taylor
6f09286fed
Merge branch 'minor-next' into stable 2023-08-01 11:57:02 +01:00
Dylan K. Taylor
774eb3e72b
5.3.5 is next 2023-08-01 11:16:51 +01:00
Dylan K. Taylor
cd8219d9fd
Release 5.3.4 5.3.4 2023-08-01 11:16:50 +01:00
Dylan K. Taylor
52ce3444d8
Merge branch 'legacy/pm4' into stable 2023-08-01 11:13:31 +01:00
Dylan K. Taylor
e9e5923639
4.23.5 is next 2023-08-01 11:12:52 +01:00
Dylan K. Taylor
49a9da147b
Release 4.23.4 4.23.4 2023-08-01 11:12:41 +01:00
Dylan K. Taylor
4c0df5ee4e
Merge branch 'stable' of github.com:pmmp/PocketMine-MP into stable 2023-07-31 11:30:18 +01:00
Dylan K. Taylor
4c737b2ee3
Merge branch 'legacy/pm4' into stable 2023-07-31 11:29:58 +01:00
Dylan K. Taylor
eb53b795d5
ItemEntity: fixed O(n^2) performance issue when many of the same unstackable item are in the same place
this produced a 40% performance improvement in a simulation with 800 item entities.

If the items were all different, then this would still be a problem. However, many of the same unstackable items occupying the same space is a problem for SkyBlock farms, so this should improve performance for SkyBlock quite a bit.
2023-07-31 11:29:12 +01:00
dependabot[bot]
befd3637f6
Bump shivammathur/setup-php from 2.25.4 to 2.25.5 (#5951)
Bumps [shivammathur/setup-php](https://github.com/shivammathur/setup-php) from 2.25.4 to 2.25.5.
- [Release notes](https://github.com/shivammathur/setup-php/releases)
- [Commits](https://github.com/shivammathur/setup-php/compare/2.25.4...2.25.5)

---
updated-dependencies:
- dependency-name: shivammathur/setup-php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-31 11:13:51 +01:00
Dylan K. Taylor
9b2a7b43c2
ItemEntity: fixed O(n^2) performance issue when many of the same unstackable item are in the same place
this produced a 40% performance improvement in a simulation with 800 item entities.

If the items were all different, then this would still be a problem. However, many of the same unstackable items occupying the same space is a problem for SkyBlock farms, so this should improve performance for SkyBlock quite a bit.
2023-07-28 16:06:29 +01:00
Dylan K. Taylor
5ec3f4655f
EntityDamageByEntityEvent: added APIs to get and set vertical knockback limits
this was requested and PR'd as far back as 2020 (see #3782).
Since no issue was filed about this, it became forgotten until #5946.
However, #5946 overcomplicates the solution to the problem, and breaks BC without an obvious reason.
2023-07-28 12:52:15 +01:00
Dylan K. Taylor
c972e65741
EntityDamageByEntityEvent: document methods 2023-07-28 12:41:27 +01:00
Dylan K. Taylor
a45763328b
Added constants for default knockback force and vertical limit 2023-07-28 12:36:46 +01:00
Dylan T
82a5ea9ed3
Allow thread errors and their traces to be properly recorded in crashdumps (#5910)
until now, any thread crash would show as a generic crash since we aren't able to get the trace from the crashed thread directly. This uses some dirty tricks to export a partially serialized stack trace to the main thread, where it can be written into a crashdump.
This enables us to see proper crash information for async tasks in the crash archive (finally!!!) as well as being able to capture RakLib errors properly.
2023-07-26 16:26:03 +01:00
rasu3n
bbdcab7277
Player: Added animation to missSwing() (#5942) 2023-07-26 10:04:36 +01:00
ipad54
6086ef667c
Added handling for attack-air action (#5912) 2023-07-25 14:50:28 +01:00
Dylan K. Taylor
486d4099df
5.3.4 is next 2023-07-24 17:29:59 +01:00
Dylan K. Taylor
a1f34a460b
Release 5.3.3 5.3.3 2023-07-24 17:29:56 +01:00
Dylan K. Taylor
5ff03c81f8
Merge branch 'legacy/pm4' into stable 2023-07-24 17:00:13 +01:00
Dylan K. Taylor
1c611a03e6
4.23.4 is next 2023-07-24 16:59:48 +01:00
Dylan K. Taylor
948875b025
Release 4.23.3 4.23.3 2023-07-24 16:59:45 +01:00
Dylan K. Taylor
fb43f59458
Merge branch 'stable' into minor-next 2023-07-24 16:45:49 +01:00
Dylan K. Taylor
16dfd27935
Merge branch 'legacy/pm4' into stable 2023-07-24 16:45:24 +01:00
Dylan K. Taylor
2a4909d328
Fixed missing handling for some ContainerUIIds
SMITHING_TABLE_TEMPLATE is new in 1.20
HORSE_EQUIP was always present, but somehow got overlooked when building up that big ugly switch table
2023-07-24 16:44:01 +01:00
Dylan K. Taylor
b078e01b65
JwtUtils: handle DER <-> raw signature conversion in-house, drop fgrosse/phpasn1 dependency
normally I would hesitate to reinvent the wheel, but we only need a tiny subset of the ASN.1 spec which is trivial to implement by itself.
I'd rather this than depend on another library that could introduce security vulnerabilities (I'm looking at you, jsonmapper).

closes #5935
2023-07-24 13:36:12 +01:00
dohwi
4eb9dacd3c
Remove unnecessary HorizontalFacingTrait (#5930)
FacingOppositePlacingPlayerTrait already includes HorizontalFacingTrait, so we don't need to include it twice.
2023-07-24 12:16:56 +01:00
Dylan K. Taylor
43770313ba
Update symfony/filesystem to 6.3.x 2023-07-24 12:07:32 +01:00
Dylan K. Taylor
3afe3b7f44
Merge branch 'stable' into minor-next 2023-07-24 12:02:24 +01:00
Dylan K. Taylor
fd23281183
Merge branch 'legacy/pm4' into stable 2023-07-24 12:00:29 +01:00
Dylan K. Taylor
70dd8732e2
Update build/php to pmmp/PHP-Binaries@46604f2f6a 2023-07-24 11:59:11 +01:00
Dylan K. Taylor
cdf72563f4
Update composer dependencies 2023-07-24 11:58:50 +01:00
Dylan K. Taylor
2779f92828
Bell: clean up code 2023-07-21 15:29:33 +01:00
Dylan K. Taylor
5899f2fc1d
Block: introduce new methods to reduce support type boilerplate checks
this switches from a 'can be supported by' concept to a 'can stay at this position' paradigm, which requires way less boilerplate code.

there may be further improvements we can make from here, such as adding traits, but this is a good first step.
2023-07-21 15:02:25 +01:00
Dylan K. Taylor
9ef835c82d
Merge remote-tracking branch 'origin/legacy/pm4' into stable 2023-07-21 11:07:32 +01:00
IvanCraft623
d65d8c3356
Fix typo in documentation of ChunkSelector:selectChunks() (#5924) 2023-07-21 10:34:34 +01:00
Dylan K. Taylor
9b43ddecbd
Drop usages of Process:kill() with subprocesses parameter
we don't need this any more with console reader improvements, and this was not working correctly anyway.

closes #5234
2023-07-20 17:10:39 +01:00
Dylan K. Taylor
4bdd6410db
Fire: fixed support requirements
closes #5599
2023-07-20 17:00:32 +01:00
Dylan K. Taylor
6ea7fd7d6b
ShulkerBox: do not offer support for other blocks 2023-07-20 16:36:25 +01:00
Dylan K. Taylor
5e7f18cbcf
StandardEntityEventBroadcaster: suppress client-side emote messages
if users want these, they can broadcast them themselves using Server::broadcastMessage(), which will also record the message in the server log like chat

closes #5669
2023-07-20 16:20:34 +01:00
IvanCraft623
4517948297
FrostedIce: Remove non-Bedrock melting behaviour (#5486) 2023-07-19 17:12:05 +01:00
dependabot[bot]
777a901932
Bump shivammathur/setup-php from 2.25.2 to 2.25.4 (#5829)
Bumps [shivammathur/setup-php](https://github.com/shivammathur/setup-php) from 2.25.2 to 2.25.4.
- [Release notes](https://github.com/shivammathur/setup-php/releases)
- [Commits](https://github.com/shivammathur/setup-php/compare/2.25.2...2.25.4)

---
updated-dependencies:
- dependency-name: shivammathur/setup-php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-19 16:37:33 +01:00
Dylan T
24d979bd08
Fixed /kill not properly killing the player under certain conditions, closes #4680 (#5919)
This occurs if the player had very high levels of Health Boost or other weird modifications.

It doesn't really make sense to apply damage modifiers to suicide anyway.

Really I'm doubtful that suicide should even be considered a damage type (perhaps we should add an EntitySuicideEvent), but that's a discussion for another time.
2023-07-19 16:33:16 +01:00
Dylan K. Taylor
86810c5e1c
LevelDB: clearer error message 2023-07-19 16:31:10 +01:00
Dylan K. Taylor
b33a9690e9
LevelDB: simplify condition 2023-07-19 16:30:13 +01:00
Dylan K. Taylor
1b9c282194
LevelDB: tolerate incorrect number of biome palettes, as long as there are enough for each real subchunk
modern versions save 24 exactly, but previous versions saved more. We don't use the excess, so it's not a problem if they are missing, but this is nonetheless non-compliant with vanilla.
2023-07-19 16:29:14 +01:00
Dylan K. Taylor
82b75e0ccb
LevelDB: Remove happy debug message 2023-07-19 15:21:47 +01:00
Dylan K. Taylor
6c59912ed5
LevelDB: workaround 0 bpb palettes with a length prefix
this was caused by a plugin overriding the world provider.

related:
-  https://github.com/pmmp/PocketMine-MP/issues/5911
-  https://github.com/Refaltor77/CustomItemAPI/issues/68

fixes #5911
2023-07-19 15:19:33 +01:00