845819123d
Player: drop perm nulling
...
this is no longer necessary because the PermissibleBase doesn't keep a ref to the Player anymore.
2021-04-27 14:49:26 +01:00
8364bc51ac
...
2021-04-27 14:47:11 +01:00
7ce77713dd
InventoryManager: add a mechanism to allow plugins to inject their own container open packet creators
...
closes #4008
2021-04-27 14:40:43 +01:00
f37c414298
Merge remote-tracking branch 'origin/stable'
2021-04-27 14:25:54 +01:00
89260d788c
3.19.2 is next
2021-04-25 20:34:13 +01:00
a7cd081002
Release 3.19.1
3.19.1
2021-04-25 20:34:13 +01:00
361be8fe36
Normal: drop MOUNTAINS and SMALL_MOUNTAINS from biome selection
...
this would cause disruption to generation on a patch release, which is unacceptable.
This would be better for 3.20 or 4.0.
2021-04-25 20:27:19 +01:00
127b57048c
Allow plugins to use PSR-4 namespace mapping ( #4188 )
...
* Allow plugins to use PSR-4 namespace mapping
this is a reduced implementation which serves the 99% use case without being horribly breakable.
Plugins may now specify a `src-namespace-prefix`, which should be set to the namespace of the classes in `src`.
If the old system is used, `src-namespace-prefix` can be omitted, or set to an empty string.
Examples:
- If `src-namespace-prefix` is `dktapps\test`, `dktapps\test\Main` will be searched for in `src/Main.php`, instead of `src/dktapps/test/Main.php`.
* Migrate TesterPlugin to PSR-4
2021-04-23 19:34:46 +01:00
b01e4ab417
Bump phpstan/phpstan from 0.12.83 to 0.12.84 ( #4189 )
2021-04-21 18:49:08 +00:00
fc01735b6f
Fixed infinite loop when placing two coral plants next to each other
...
the dead flag is not persisted in their metadata, so they forget their state when next read from the world.
2021-04-19 23:01:57 +01:00
4e0bc6c98e
Scrub PHPStan baselines
2021-04-19 16:18:22 +01:00
73f913e279
Modernize TesterPlugin
2021-04-19 14:16:05 +01:00
dc51af8b66
changelog: mention CancelTaskException addition
...
[ci skip]
2021-04-19 14:00:54 +01:00
94928c030a
Removed CancellableClosureTask
2021-04-19 14:00:23 +01:00
9c1b4fd1cd
Added CancelTaskException ( #4186 )
2021-04-19 13:41:51 +01:00
5872b2fe23
Merge remote-tracking branch 'origin/stable'
2021-04-19 13:32:15 +01:00
177b963d8e
TaskScheduler: do not push cancelled repeating tasks back onto the queue
2021-04-19 13:23:31 +01:00
66fdf526d4
Remove GarbageServerboundPacket
...
it's not the protocol implementation's job to decide what's garbage. It should only indicate that a packet MAY be sent by the client. It should then be up to the handler to decide what to do with it.
2021-04-19 01:07:21 +01:00
6845cbb2b3
Silence LevelSoundEventPacket noise
2021-04-19 01:02:22 +01:00
4f4069d403
World: remove another noisy debug message
2021-04-19 00:55:42 +01:00
09a2402f01
Fixed precondition on double chunk send being useless
...
this is messy, but necessary for now.
2021-04-19 00:50:43 +01:00
d19c21e2e1
Updated PHPStan baseline
2021-04-19 00:38:27 +01:00
6d38922af0
Undo my -100IQ fuckup with chunk sending precondition
...
the commit I reverted put the preconditions in the completion handler,
which is executed AFTER THE CHUNK IS SENT.
Revert "NetworkSession: allow Player to handle its own business in chunk sending"
This reverts commit a223d1cbf3
.
2021-04-19 00:36:13 +01:00
35a3522b4e
Player: fixed chunks getting spammed like crazy during generation
...
because of the shitty way that the chunk resending is handled, it causes all kinds of problems with the async system because of potential reversions of the state during the process.
2021-04-19 00:30:34 +01:00
0251359179
ChunkCache: remove outdated TODO comment
...
we don't set the entire chunk during lighting updates anymore, so updating light doesn't trigger onChunkChanged().
2021-04-19 00:20:03 +01:00
b4afa46fad
Player: don't re-request chunks unless they've already been sent
...
if they've been requested, the ChunkCache will take care of rebuilding the chunk packet before sending it.
2021-04-18 23:53:34 +01:00
8d1a1628de
Item: Remove "ench" tag when all enchantments are removed from an item ( #4184 )
...
fixes #4144
2021-04-18 20:56:07 +01:00
129c638e29
Remove unused import
2021-04-18 20:33:49 +01:00
caf3ec1b54
World: improve documentation of World::getPotentialBlockSkyLightAt()
2021-04-18 20:31:42 +01:00
53ebe4f9f9
World: added getHighestAdjacentFullLightAt()
2021-04-18 20:20:08 +01:00
51b0685881
World: document getFullLight() and getFullLightAt()
2021-04-18 20:14:16 +01:00
f29ababf8d
World: Rearrange some light-related methods
...
these things are all over the place ...
2021-04-18 20:07:36 +01:00
5dfa6a2296
Fix dragon egg teleporting in creative ( #4180 )
...
closes #4179
2021-04-17 19:11:10 +01:00
a32eb4ebc3
Implemented coral and coral fans
...
this implementation is very rough due to having to hack around lots more MCPE bullshit, and currently doesn't allow dynamic coral types; but it's there. We'll clean this up after 1.13 migration is done.
2021-04-17 02:04:10 +01:00
d5e1b4bd39
Furnace: Separate light/extinguish code into onStartSmelting() and onStopSmelting() hooks
...
this is a preparation for other kinds of furnaces which might not be plain old Furnaces.
2021-04-17 01:36:16 +01:00
9abdcd8ee5
shut
2021-04-16 21:45:22 +01:00
01c3668375
ItemFactory: Check the bounds of durability, instead of trying to catch exceptions
2021-04-16 21:30:48 +01:00
da51f106de
ItemFactory/BlockFactory: give more specific class descriptions
...
these classes both have a very specific purpose now, which is much lesser than it was in PM3.
2021-04-16 21:27:28 +01:00
c979ab8aa0
Be more specific with documentation of ItemFactory::register() and BlockFactory::register()
2021-04-16 21:24:16 +01:00
6071746993
Mark ItemFactory::get() and BlockFactory::get() as @deprecated
2021-04-16 21:16:27 +01:00
81ced66bd0
BlockIdentifier: variant parameter of constructor is now mandatory
2021-04-16 20:14:29 +01:00
8d2ee516f0
Merge branch 'stable'
2021-04-16 18:26:33 +01:00
6f80b8979d
Particle: added some missing IDs
2021-04-16 18:20:47 +01:00
b31b097b8e
LightPopulationTask no longer hard-depends on Server
2021-04-16 15:41:14 +01:00
3c8eb29d4e
Limit blockitem metadata hack to just blockitems
...
for some reason putting NBT on some items makes the creative inventory go haywire. Sadly, we currently need this hack, so I limit it to only stuff which actually needs it (blockitems).
closes #4159
2021-04-16 00:41:19 +01:00
b94bbf6f5e
Merge branch 'stable' of github.com:pmmp/PocketMine-MP into stable
2021-04-16 00:11:01 +01:00
314a8a1297
protocol: updated particle type constants
...
closes #4173
2021-04-16 00:10:48 +01:00
ebd19f5a70
SubChunkExplorer: Protect world field
2021-04-15 23:32:30 +01:00
bf67170504
SubChunk: don't assume 15 sky light when not allocated
...
closes #2533
at long last...
2021-04-15 23:22:53 +01:00
5d83f4670a
RegionLoader: Switch to using named constructors
...
this makes the code more self-descriptive, and also helps to detect potential bugs.
2021-04-15 21:57:23 +01:00