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
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
e8dd4de5c8
SubChunk: Lazily allocate LightArrays as needed
...
this is slightly slower, but saves a significant amount of memory (~80 KB per chunk).
Since ext-chunkutils2 doesn't do copy-on-write trickery like the PHP impl did, we need this to get the memory advantages back.
2021-04-15 21:43:46 +01:00
e6ecacbb2b
World: do not access chunks for light if they aren't yet light-populated
2021-04-15 21:21:34 +01:00
ab9615fb9c
World: fixed documentation for getHighestAdjacentPotentialBlockSkyLight()
...
[ci skip]
2021-04-15 21:19:58 +01:00
0f14c589f7
[ci skip] changelog: added a table of contents
...
generated using https://ecotrust-canada.github.io/markdown-toc/
2021-04-15 20:48:54 +01:00
9655cb819d
World: Remove duplicated code
2021-04-15 19:41:03 +01:00
99ed87bc29
NetworkSession: changed misleading debug message in beginSpawnSequence()
2021-04-15 19:27:51 +01:00
ec32848a97
[ci skip] changelog: world spawn generation progress is now logged
2021-04-15 19:27:17 +01:00
a0c3102b05
FormatConverter: add @phpstan-param for newProvider ctor parameter
2021-04-15 19:14:52 +01:00
8e3f5737a0
RegionWorldProvider: fix CS
2021-04-15 15:39:08 +01:00
32c4a165cf
Removed RegionLoader::open()
...
this is nothing but a source of bugs.
2021-04-15 15:38:18 +01:00
edb590f681
missed one ...
2021-04-15 15:23:15 +01:00
08f0c9a244
Separate writable parts of RegionWorldProvider into WritableRegionWorldProvider
2021-04-15 15:20:57 +01:00
e6fb6b1f27
BaseLevelProvider: Remove obsolete proxy methods
2021-04-15 15:15:16 +01:00
be190fc41b
gitignore: add backups
2021-04-15 15:01:01 +01:00
dc5b1efa66
Merge remote-tracking branch 'origin/stable'
2021-04-15 14:04:27 +01:00
8af6b112d2
WorldManager: log after first chunk's generation has been completed
...
this is as close as we can get to the actual start of generation.
2021-04-15 14:01:28 +01:00
506a235d7a
[ci skip] changelog: remove mention of ext-ds
2021-04-15 14:00:45 +01:00
3e1ff2a63b
[ci skip] mention WorldCreationOptions changes in changelog
2021-04-15 13:57:20 +01:00