14162 Commits

Author SHA1 Message Date
Dylan K. Taylor
ece49f011c
Merge branch 'stable' into next-minor 2023-01-06 01:50:17 +00:00
Dylan K. Taylor
5d6dba96af
Merge branch 'stable' into item-stack-request 2023-01-06 01:47:27 +00:00
Dylan K. Taylor
f43ca405d4
4.12.6 is next 2023-01-06 00:44:58 +00:00
Dylan K. Taylor
d146175d27
Release 4.12.5 2023-01-06 00:44:58 +00:00
Dylan K. Taylor
3baa5ab712
InGamePacketHandler: removed obsolete workaround 2023-01-06 00:41:57 +00:00
Dylan K. Taylor
b24eb153f9
Constrain inventory transaction predictions
these are now only used for actions done with a closed inventory window. This means that they can only predict the slots of inventory, offhand and armor (total 41 slots) and perhaps include some DropItem actions.
2023-01-05 21:18:30 +00:00
Dylan K. Taylor
36525d9055
Fixed multi-output recipe handling 2023-01-05 20:41:44 +00:00
Dylan K. Taylor
3d6baa8a55
Working creative inventory, with a few more hacks than I'd like 2023-01-05 18:09:57 +00:00
Dylan K. Taylor
30d3869eea
Remove dead code 2023-01-05 17:26:58 +00:00
Dylan K. Taylor
81697111b9
Merge branch 'item-stack-request' of github.com:pmmp/PocketMine-MP into item-stack-request 2023-01-05 17:24:15 +00:00
Dylan K. Taylor
eedc943766
Confine legacy transaction handling to dropping items only 2023-01-05 17:23:50 +00:00
IvanCraft623
e647e8c933
World: Use existing function to notify nearby blocks of an update (#5494) 2023-01-05 16:55:35 +00:00
IvanCraft623
c6e11a8453
Remove unnecessary ternary operator (#5493) 2023-01-04 23:22:31 +00:00
Dylan K. Taylor
2e9a3f9160
Working crafting :woohoo: 2023-01-04 22:29:29 +00:00
IvanCraft623
433f5451d7
Improve World::notifyNeighbourBlockUpdate() doc (#5491) 2023-01-04 20:11:55 +00:00
ipad54
85231215e7
Implemented Sculk (#5489) 2023-01-04 20:10:46 +00:00
Dylan K. Taylor
3d4ed5308e
Merge branch 'stable' into item-stack-request 2023-01-04 01:28:42 +00:00
Dylan K. Taylor
33d1755eae
Player: fixed not receiving slot updates for small crafting grid
I'm not really sure why this tracking logic is here and not in InventoryManager, but for now it is what it is.
2023-01-04 01:28:25 +00:00
Dylan K. Taylor
58dd4a44e3
Merge branch 'stable' into item-stack-request 2023-01-04 00:41:58 +00:00
Dylan K. Taylor
fc63c54116
CraftingManager: more detailed type information for shapelessRecipes and shapedRecipes 2023-01-04 00:32:26 +00:00
Dylan K. Taylor
5fdbb19852
Fixed a whole bunch of issues with legacy transactions 2023-01-04 00:13:51 +00:00
Dylan K. Taylor
6b2156151f
Merge branch 'stable' into item-stack-request 2023-01-03 23:51:37 +00:00
Dylan K. Taylor
db07976aab
TypeConverter: do not send useless meta to the client 2023-01-03 23:50:31 +00:00
Dylan K. Taylor
d8d236842f
Fixed merge error 2023-01-03 19:54:41 +00:00
Dylan K. Taylor
f51717323b
Merge branch 'stable' into item-stack-request 2023-01-03 19:53:25 +00:00
Dylan K. Taylor
0e4b79ea77
InGamePacketHandler: fixed client-side predictions not getting rolled back for block placement 2023-01-03 19:43:21 +00:00
Dylan K. Taylor
588c9b114b
4.12.5 is next 2023-01-03 19:30:02 +00:00
Dylan K. Taylor
b095f606c1
Release 4.12.4 2023-01-03 19:29:47 +00:00
Dylan K. Taylor
b312e93176
Limit list max size in transactions
this duct tape is to limit the impact of a security vulnerability being actively exploited.
2023-01-02 22:59:48 +00:00
BrandPVP
42db3abf5e
QueryInfo->setPlayerList() now accepts string[] instead of Player[] (#5476) 2022-12-31 13:04:22 +00:00
Alexey
172ce659b8
Use str_starts_with, str_ends_with and str_contains instead of strpos (#5485) 2022-12-31 13:02:23 +00:00
Dylan K. Taylor
61933624d2
NetworkSession: Lift batch limit to 1300 to allow shift-click crafting to work correctly
the theoretical limit for transactions in this case is 64x9 (inputs) + 64x9 (output on crafting grid) + 64 (outputs to main slot) + 64 CraftingEventPackets = 1280.
This is an extreme case which assumes that a recipe could generate up to 64x10 (640) output items per iteration, filling every slot of the output grid, which should never occur in any reasonable circumstances.
2022-12-30 22:11:35 +00:00
Alexey
0d31b25fba
Use str_starts_with and str_contains instead of strpos (#5482) 2022-12-30 21:41:30 +00:00
Dylan K. Taylor
90beaeaeb4
4.12.4 is next 2022-12-28 21:01:50 +00:00
Dylan K. Taylor
466f7e98ed
Release 4.12.3 2022-12-28 21:01:47 +00:00
Dylan K. Taylor
59be901efe
Fixed unauthenticated sessions taking up player slots 2022-12-28 20:42:33 +00:00
Dylan K. Taylor
2da9b76452
Added translatable descriptions for permissions 2022-12-27 20:29:38 +00:00
Dylan K. Taylor
c79806eaf0
NetworkSession: localize session open, close, and player name discovery messages 2022-12-27 20:11:46 +00:00
Dylan K. Taylor
7ac6bd79a9
Localized remaining disconnection screens (except one or two that should never actually happen) 2022-12-27 20:05:59 +00:00
Dylan K. Taylor
6b8b7311f0
Support localized disconnect screen messages for PlayerLoginEvent 2022-12-27 18:57:32 +00:00
Dylan K. Taylor
f173b91ca1
Introduce support for Translatable disconnection messages
this allows localizing disconnection screens (at least, once #4512 has been addressed) and the disconnect reasons shown on the console.

We already had disconnect messages implicitly localized in a few places, so this is just formalizing it.
This does break BC with any code that previously passed translation keys as the disconnect screen message, because they'll no longer be translated (only Translatables will be translatated now).
2022-12-27 18:36:07 +00:00
Dylan K. Taylor
9796dfd4d9
Fix build 2022-12-27 18:32:22 +00:00
Dylan K. Taylor
c1ba735c9e
Move common protocol disconnection logic to NetworkSession 2022-12-27 18:05:50 +00:00
Dylan K. Taylor
8fd4918429
Use Filesystem::fileGetContents() in more places 2022-12-25 18:26:53 +00:00
Dylan K. Taylor
c89df7eb1c
Merge remote-tracking branch 'origin/next-minor' into next-major 2022-12-25 18:22:13 +00:00
Dylan K. Taylor
0d169b4e80
Filesystem: added fileGetContents to reduce ErrorToExceptionHandler boilerplate code 2022-12-25 17:13:51 +00:00
Dylan K. Taylor
b1c0eae1f6
NetworkSession: tidy up common disconnection logic 2022-12-24 20:36:18 +00:00
Dylan K. Taylor
80832ff763
NetworkSession: do not send packets to disconnected sessions
this is mostly harmless, since the packets land in a buffer that gets discarded, but we also need to avoid calling DataPacketSendEvent.
2022-12-24 20:12:50 +00:00
Dylan K. Taylor
f7d0d16eb3
NetworkSession: defer destructive cleanup until the next session tick() call
this fixes crashes when kicking players during PlayerJoinEvent and various other events.
2022-12-24 20:06:00 +00:00
Dylan K. Taylor
6375139d0b
DefaultPermissions: improve readability slightly 2022-12-24 17:47:17 +00:00