8857 Commits

Author SHA1 Message Date
Dylan K. Taylor
0682c93f5a
Drop bcmath dependency
we haven't used bcmath since the days of 32-bit.
2020-12-14 20:59:07 +00:00
Mohamed
1c43538238
Fix that a hoe gets damage applied to it, when it's used to break a block (#3967)
closes #3965
2020-12-11 21:14:52 +00:00
Dylan K. Taylor
68887105b2 Utils::cleanPath(): drop the square braces
this looks ugly, as well as breaking plugin crash detection (which tbh is too fragile, but it is what it is ...)
2020-12-09 20:26:08 +00:00
Dylan K. Taylor
104e90b794 CrashDump: more robust core crash detection 2020-12-08 23:27:03 +00:00
Dylan K. Taylor
994062f6dc CrashDump: fixed plugin detection on eval()'d code
it's possible we could clean the path up to detect which plugin caused the crash, but for now I'll be happy to not have them showing up as core crashes ...
2020-12-08 23:11:29 +00:00
Dylan K. Taylor
69a41a5ed4 3.17.1 is next 2020-12-08 21:02:14 +00:00
Dylan K. Taylor
3903b70ef5 Release 3.17.0 2020-12-08 21:02:13 +00:00
Dylan K. Taylor
692e63ad7c Protocol changes for 1.16.200 2020-12-08 20:31:17 +00:00
Dylan K. Taylor
4d1be4d41d McRegion: do not create a region file when trying to read a chunk that doesn't exist
fixes #3953
2020-12-07 18:44:49 +00:00
Dylan K. Taylor
5f0310a8b6 3.16.2 is next 2020-12-07 17:16:11 +00:00
Dylan K. Taylor
9b01fb3d89 Release 3.16.1 2020-12-07 17:16:10 +00:00
Dylan K. Taylor
6869ee1c2d Clean up nonsensical code in NetworkBinaryStream->getSlot() 2020-12-05 01:24:41 +00:00
HighTec
26155acff2
register HellBiome (#3950) 2020-12-04 11:58:49 +00:00
Dylan K. Taylor
48fa19fdcd PermissionAttachmentInfo::__construct() never throws an exception 2020-12-01 17:30:35 +00:00
DerDevHD
bac986d0b2
Fixed crash when executing command /version with multiple authors declared in 'author' (#3940)
closes #3902
2020-12-01 15:47:55 +00:00
Dylan K. Taylor
215bac8dd7 phpstan 0.12.58 2020-11-30 22:11:43 +00:00
Dylan K. Taylor
ef034f2d68 PermissionAttachment: better document the apparently nonsensical code responsible for making sure the entire permission system doesn't burn down 2020-11-28 16:05:16 +00:00
Dylan K. Taylor
ab18332572 PermissionManager: fixed nonsensical PHPDoc type 2020-11-27 19:54:05 +00:00
Dylan K. Taylor
4102205ba6 Enhance type information in PlayerCreationEvent 2020-11-24 16:28:36 +00:00
Dylan K. Taylor
9e85ee4a7a Fixed missing field on Persona skin encode 2020-11-21 18:01:56 +00:00
Dylan K. Taylor
23849b7f63 3.16.1 is next 2020-11-21 01:25:06 +00:00
Dylan K. Taylor
d2f68836c6 Release 3.16.0 2020-11-21 01:25:06 +00:00
Dylan K. Taylor
d19db5d2e4 fix phpstan warnings 2020-11-21 01:16:04 +00:00
Dylan K. Taylor
98cdc80d37 Protocol changes for 1.16.100 2020-11-21 01:07:25 +00:00
Dylan K. Taylor
8273f789ee Backport SingletonTrait to PM3 2020-11-20 21:00:47 +00:00
Dylan K. Taylor
e30b1ee2c7 Clean up entity and tile saveID handling
we only ever need the first entry, so there's no point storing all of them. In addition, the field is private, which guarantees that nothing else needs the array either.
This also fixes phpstan/phpstan@c50650c5dd.
2020-11-12 21:49:12 +00:00
Dylan K. Taylor
574b7f6343 3.15.5 is next 2020-11-10 16:48:18 +00:00
Dylan K. Taylor
e8b6b56330 Release 3.15.4 2020-11-10 16:48:18 +00:00
Dylan K. Taylor
c368ebb5e7 InventoryTransaction: beware of conflicting slot change actions with the same origin/target
these types of chains would never normally occur, but they've been seen in the wild. Attempting to resolve such chains has exponentially increasing complexity.
2020-11-10 16:45:20 +00:00
Dylan K. Taylor
a421d32273 3.15.4 is next 2020-11-08 14:48:31 +00:00
Dylan K. Taylor
6c21c23444 Release 3.15.3 2020-11-08 14:48:31 +00:00
Dylan K. Taylor
55e0d9c520 Properly time chunk loading and chunk sending on timings reports, closes #3895 2020-11-08 14:30:12 +00:00
Dylan K. Taylor
37ee3f2775 Player: fixed orderChunks performance issue on newly-generated maps
every time a chunk passed through Level->generateChunkCallback(), it fired onChunkChanged() for chunk listeners, which in turn caused players to rerun chunk orders even though the target chunk had not been sent yet anyway.
2020-11-05 16:17:39 +00:00
Dylan K. Taylor
6cff08cd65 Chunk: fixed hasChanged being set on fastDeserialize() chunks (caused by 2bb497b7162719507184e0e3a36027cedd7bbe29)
this caused some performance issues and silent bugs with the generator, notably that the generator would always think all chunks had been changed, causing them to be re-set back into the world 9 times.
2020-11-01 15:50:21 +00:00
Dylan K. Taylor
fec42f16ba Level: properly define type of generator field 2020-11-01 14:36:05 +00:00
Nick
deb0cee8a0
BaseInventory::canAddItem(): consider item max stack size (#3881)
this fixes addItem() failing when canAddItem() reported that an item can be added.
2020-11-01 13:49:13 +00:00
Dylan K. Taylor
c0dafe7872 Explosion: remove dead code
this was needed for the old ExplodePacket, which was removed a few versions back.
2020-10-29 13:32:56 +00:00
Dylan K. Taylor
0b550b346b imports cleanup 2020-10-26 15:43:25 +00:00
Dylan T
69aa7c5ac1
Support for Composer v2 (#3880) 2020-10-24 16:42:38 +01:00
Dylan K. Taylor
11b74868ee CraftingTransaction: remove impossible condition
this is never hit thanks to the logic flow above - recipeItems is never empty.
2020-10-24 11:22:02 +01:00
Dylan K. Taylor
9a53de0903 Utils: explode() never returns an empty array 2020-10-24 11:19:37 +01:00
Dylan K. Taylor
0f8101d4a6 McRegion: Ignore files which don't have a valid file extension
previously a file with a 4-letter name ending in 'mca' in the region folder of a PMAnvil world would cause the world format to be unrecognized. This happens because strrpos() returns false when the substring isn't found, which gets coerced to 0 when used in addition.
2020-10-24 11:15:07 +01:00
Dylan K. Taylor
55ecac4c80 Fixed always-true condition in world loading
this has a couple of side effects which need to be explored.
- first of all, this bug prevented generateLevel() from filling in the preset from server.properties. With this fix, worlds which don't have any extra generator settings will start to be generated using server.properties settings, which is almost certainly not expected behaviour.
- preset can now be specified separately from generator in pocketmine.yml, which is nicer for users.
2020-10-24 11:10:35 +01:00
Dylan K. Taylor
2a1d1e90a2 php-cs-fixer nits 2020-10-21 16:44:57 +01:00
Dylan K. Taylor
a251960c1c AsyncPool: expose workerUsage to the API
this allows plugins (and maybe later on the core) to detect async worker overload and warn the user about potential performance issues.
I planned to implement such detection in the core directly, but it turned out to be a bit more complex than I anticipated. At the least, this API might be useful to someone else.
2020-10-16 21:20:49 +01:00
Dylan K. Taylor
52f734799e Human: do not modify totalXp unless setting XP succeeds 2020-10-16 20:43:03 +01:00
Dylan K. Taylor
42171f6e06 Human: beware negative values in addXp() 2020-10-16 20:42:13 +01:00
Dylan K. Taylor
1fe4fdc67c PluginDescription: fixed some very old refactoring errors 2020-10-15 13:55:40 +01:00
Dylan K. Taylor
3e2926441d PluginDescription: make sure that extensions constraints are actually strings 2020-10-13 17:21:10 +01:00
Dylan K. Taylor
0b33762be0 PluginDescription: fixed type of extensions (reported by phpstan 0.12.49) 2020-10-13 17:21:10 +01:00