Commit Graph

11256 Commits

Author SHA1 Message Date
ce0af8b040 DataPacket now encapsulates NetworkBinaryStream instead of extending it
ultimately the goal is to remove the NetworkBinaryStream crap entirely, but this change has most of the same benefits and is less disruptive.
2020-02-24 18:59:54 +00:00
7c2741e4f5 Inventory: eliminate remaining $send parameters 2020-02-23 21:59:51 +00:00
36685001bd ContainerOpenPacket: fixed entityInv() not initializing x/y/z fields
these are written even when not used, so they have to be initialized.
2020-02-23 20:59:53 +00:00
95eddbdd74 InventoryManager: move add/remove logic to separate functions 2020-02-12 17:36:29 +00:00
55e3b9ed91 InventoryManager: avoid feedback loop when closing inventory 2020-02-12 16:35:57 +00:00
b108fb61bf Inventory: drop $send params from setItem() and clear() 2020-02-12 13:34:35 +00:00
1c06438cbb Inventory: remove final usage of $send parameter of setItem() and clear() 2020-02-12 13:33:23 +00:00
4014f9a4f2 InventoryManager: be aware of client-side state when syncing slots
this eliminates feedback loops during client-initiated slot changes, and also makes it possible to have a SlotChangeAction anonymous from its initiator.
2020-02-11 21:12:18 +00:00
cd71a6204f Revert "PopulationTask: do not populate light in chunks out of the gate"
This reverts commit 42148f0d15.
2020-02-11 19:43:25 +00:00
42148f0d15 PopulationTask: do not populate light in chunks out of the gate
this is a relic from when we needed to store light on disk. Now we can just calculate lighting as-needed instead.
2020-02-11 19:14:01 +00:00
9b6fa8c25b Merge branch 'stable' 2020-02-11 19:12:39 +00:00
2bb497b716 Chunk: flag hasChanged when changing generated/populated/light-populated flags 2020-02-11 08:26:12 +00:00
613bd40601 PopulationTask: move setPopulated() call to make it more obvious what is going on 2020-02-10 18:22:19 +00:00
398b636759 PopulationTask: fixed chunks being generated empty in flat worlds
the flat generator just clones a pregenerated chunk instead of modifying the provided chunks, which means that the references that population task has would be the outdated ones.
2020-02-10 18:21:08 +00:00
e8bb6b8625 Command: fix output translation regression caused by 4c51f1dda3 2020-02-10 11:42:21 +00:00
7ad44d8403 ChunkRequestTask: do not copy light information when sending chunks 2020-02-09 17:49:15 +00:00
d360439c92 FastChunkSerializer: expose a method to disable lighting serialization
this is useful for copies which don't care about lighting, such as chunk sending.
2020-02-09 17:48:30 +00:00
ce42ca958e InGamePacketHandler: do not execute use-item action if already using item, fixes #3246
the useHeldItem() sets the using-item flag back to true immediately after consumeHeldItem() sets it to false, which caused this bug.
stable has the same problem, but the effects don't show due to a well timed MobEquipmentPacket (a happy accident).
2020-02-09 12:13:15 +00:00
4c51f1dda3 Scrap TextContainer, make TranslationContainer immutable
TextContainer provided zero real value as a base of TranslationContainer, given that it required its own logic to be handled wherever accepted. As such, it's no better than a simple string.
Removing it also allows fixing an ambiguity when embedding translations inside other translations, allowing it to be made immutable.
2020-02-08 13:38:27 +00:00
2375e9519d RegionWorldProvider: fix CS 2020-02-08 09:34:22 +00:00
bfdfa4184b Merge branch 'stable' 2020-02-08 09:33:56 +00:00
1257378198 clean up function imports 2020-02-08 09:31:15 +00:00
17fc49db8a Player: fix regression in disconnect caused by 66a1134ca1 2020-02-08 09:07:09 +00:00
2e3a9f251f missed one 2020-02-07 22:17:33 +00:00
2d461251ed phpstan: ignore more errors reported by strict-rules 2020-02-07 22:14:51 +00:00
66a1134ca1 Player: avoid another empty() usage 2020-02-07 22:13:43 +00:00
ec9ece56f5 Player: fetch world via location
this code caters for the possibility of the world being null.
2020-02-07 22:11:14 +00:00
04a3e71047 ChunkSerializer: avoid using loop vars outside loop scope 2020-02-07 22:10:23 +00:00
ee36ac9875 ProcessLoginTask: use strict base64_decode() 2020-02-07 22:09:46 +00:00
bc60bb9462 remove useless type asserts on Entity->getWorld() 2020-02-07 22:08:38 +00:00
85f3dca11b HandlerListManager: make resolveNearestHandleableParent() a little easier to follow
and also sidestep phpstan complaining about using loop vars outside of loop
2020-02-07 22:07:36 +00:00
fd675449e9 BlockFactory: fill blastResistance with float(0)
technically there wasn't anything wrong with this code, but it caused the type inference to report incompatibility, and I can't be bothered to report a PHPStan bug.
2020-02-07 22:06:34 +00:00
d2aca6023b add native return types to closures (for phpstan) 2020-02-07 22:05:15 +00:00
aac7da6c96 eliminate remaining empty() usages 2020-02-07 21:51:50 +00:00
1ffabbb567 fixed ignoreError for registerEvent() 2020-02-07 20:25:08 +00:00
347b94b284 Merge branch 'stable' 2020-02-07 20:18:17 +00:00
758a68aa2c ItemFactory: add Item[] as type for list field (for auto complete) 2020-02-07 20:11:31 +00:00
bfce478e72 BlockFactory: keep the generic types for PHPStan, which actually understands it 2020-02-07 20:10:40 +00:00
681dd469a2 PluginManager: add class-string phpstan param to registerEvent() 2020-02-07 20:05:41 +00:00
3edbea8545 PluginManager: fix spacing of phpdoc comment for registerEvent() 2020-02-07 19:37:22 +00:00
3a9e6bb612 CallbackInventoryChangeListener: fix use of tab instead of space 2020-02-07 19:28:43 +00:00
31405f7587 EnumTraitTest: use @doesNotPerformAssertions 2020-02-07 18:35:55 +00:00
31fcd8e5fa ItemTest: use the proper method to explicitly fail a test 2020-02-07 18:35:26 +00:00
95896eb911 tests/phpunit: fill in some phpstan types 2020-02-07 18:34:57 +00:00
091873ca51 HandlerListManagerTest: fix phpunit 8.x compatibility 2020-02-07 18:14:43 +00:00
5e85705ec8 Merge branch 'master' of https://github.com/pmmp/pocketmine-mp 2020-02-07 18:14:10 +00:00
fb1126797a Merge branch 'stable' 2020-02-07 18:13:55 +00:00
93671d8bfe fixed broken tests from level->world rename
how did this not get noticed before ???
2020-02-07 17:22:49 +00:00
4140af459e travis: cache leveldb artifacts to reduce build time 2020-02-07 14:05:11 +00:00
f713cf25b1 travis: update leveldb version, only build sharedlibs targets on travis 2020-02-07 13:54:22 +00:00