Dylan K. Taylor
dd0c2fed82
Process: add subprocess parameter to kill()
...
fix CommandReader subprocess lingering on a crash and fucking up the console
2021-10-02 16:56:24 +01:00
Dylan K. Taylor
54174eefa0
Make sure COMPOSER_AUTOLOADER_PATH is always declared
...
Sacrifice dynamic composer autoloader path to do this, because we don't
need it anyway - it was a misconceived feature from the days when I used
the same workspace for PM3 and PM4 both.
2021-10-02 15:27:17 +01:00
Dylan K. Taylor
f5266ec816
World: remove dead code leftover from 34f01a3ce3c02f41cfebfc81d34b755cfed62811
...
fixes #4486
2021-10-02 12:33:46 +01:00
Dylan K. Taylor
f26f063164
UPnP: catch InternetException when attempting portforward
...
we might fail to get the internal IP for some reason, which shouldn't crash the server.
2021-10-02 00:52:14 +01:00
Dylan K. Taylor
81d5598e96
UPnP: Fixed server crash on failure to find UPnP device
...
https://crash.pmmp.io/view/5241010
2021-10-01 23:27:58 +01:00
Dylan K. Taylor
c7e9138994
PopulationTask: reduce code duplication
2021-10-01 23:18:56 +01:00
Dylan K. Taylor
88f799da2c
more AssumptionFailedError hacks for PHPStan :(
...
the code in this class is really horrible
2021-10-01 23:05:48 +01:00
Dylan K. Taylor
8de30e8162
FastChunkSerializer no longer serializes light by default
...
the core doesn't use this anywhere.
serializeWithoutLight() has been renamed to serializeTerrain() to more accurately describe what it does.
2021-10-01 22:57:22 +01:00
Dylan K. Taylor
e6f6a036ef
LightPopulationTask: do not copy existing light arrays
...
this task wipes out the light arrays and recalculates them from scratch, so it's pointless to copy any preexisting light arrays anyway.
2021-10-01 22:34:11 +01:00
Dylan K. Taylor
5b818827db
Chunk: stop exposing SplFixedArray<SubChunk> to the API
...
this fixes a large number of PHPStan errors, and also brings us a step closer to negative-build-height readiness.
2021-10-01 22:17:28 +01:00
Dylan K. Taylor
42bf9578ce
Remove unused constants
2021-10-01 22:05:03 +01:00
Dylan K. Taylor
349f37b15f
resource packs: manifest may also contain a list of dependencies
...
... which we should be verifying the presence of, as the server.
2021-10-01 21:14:28 +01:00
Dylan K. Taylor
afa3349c04
Acknowledge the presence of capabilities field in resource pack manifest
...
closes #4485
2021-10-01 21:09:53 +01:00
Dylan K. Taylor
6a8280b1ba
Lever: add block property APIs
2021-09-29 00:20:57 +01:00
Jason
d417b1e2f5
Projectile: fixed move() not using the given parameters ( #4481 )
...
it was using this->motion instead, which usually would be the same, but maybe not.
2021-09-28 21:03:03 +01:00
Dylan K. Taylor
c931c52617
AsyncTask: added newline
2021-09-27 13:53:30 +01:00
Dylan K. Taylor
b3e8314b9f
PTHREADS_INHERIT_CONSTANTS is no longer needed for MainLogger to log exceptions
...
cleaned paths are now referenced from Filesystem instead of namespace constants.
2021-09-26 21:41:24 +01:00
Dylan K. Taylor
f138004913
PlayerDeathEvent: fixed property type variance issue PHPStan complains about
2021-09-26 21:20:42 +01:00
Dylan K. Taylor
8e2d06a880
ChunkSerializer: support writing 0 bpb palettes on the wire
...
these are now supported as of 1.17.30.
2021-09-25 01:17:32 +01:00
Leo Lee
eb80515e99
Fixed incorrect parameter checking in BlockFactory::get() ( #4476 )
2021-09-24 15:47:11 +01:00
Dylan K. Taylor
1cb540387c
4.0.0-BETA4 is next
2021-09-23 21:51:36 +01:00
Dylan K. Taylor
9bc07a9cc0
Release 4.0.0-BETA3
2021-09-23 21:51:23 +01:00
Dylan K. Taylor
d455188d03
3.23.2 is next
2021-09-22 01:00:50 +01:00
Dylan K. Taylor
14fba36636
Release 3.23.1
2021-09-22 01:00:50 +01:00
Dylan K. Taylor
817fec9e3d
EducationSettingsPacket: safeguard against purity issue reported by PHPStan
...
while annoying, PHPStan is right to complain about this, because putBool() is impure, meaning that these fields could have been mutated in the call.
We know they didn't, but PHPStan doesn't, and we can't mark the method as pure because .. well .. it isn't.
2021-09-22 00:44:52 +01:00
Dylan K. Taylor
ceeef7c729
3.23.1 is next
2021-09-22 00:29:24 +01:00
Dylan K. Taylor
7f1b2a0ee5
Release 3.23.0
2021-09-22 00:29:24 +01:00
Dylan K. Taylor
27324a3aeb
Protocol changes for 1.17.30
2021-09-22 00:26:39 +01:00
Dylan K. Taylor
1ce388ca0b
Liquid: add getMinAdjacentSourcesToFormSource(), remove circular dependency between Liquid and Water
...
this unpleasantly-named method allows controlling the source-forming behaviour of liquids by changing the required number of adjacent sources that must be present in order for a new source to form. This allows stuff like non-infinite water.
2021-09-19 15:59:16 +01:00
Dylan K. Taylor
971cbe3929
Liquid: restore mistakenly removed check
2021-09-19 15:42:17 +01:00
Dylan K. Taylor
18de35ffc7
Liquid: use facing instead of hardcoded integers
2021-09-19 15:37:03 +01:00
Dylan K. Taylor
576c33ee8f
Liquid: make flow vector calculation less cancerous to read
2021-09-18 23:04:28 +01:00
Dylan K. Taylor
6b2ab15ea1
MinimumCostFlowCalculator: fix bug caused by recent change
2021-09-18 16:20:01 +01:00
Dylan K. Taylor
027f7e249b
MinimumCostFlowCalculator: Use match statements where possible
...
coincidentally, this also fixes the build.
2021-09-18 16:17:08 +01:00
Dylan K. Taylor
a9c4238c59
Liquid: Extract a big chunk of code to MinimumCostFlowCalculator
2021-09-18 16:13:38 +01:00
Dylan K. Taylor
34e1b244fa
Liquid: split canFlowInto() over multiple lines
...
the original version is very hard to read.
2021-09-18 15:53:54 +01:00
Dylan K. Taylor
b047100719
Liquid: improve minimum cost calculation handling
2021-09-18 15:52:16 +01:00
Dylan K. Taylor
1b5071e074
Liquid: make some code slightly less cancerous to read
2021-09-18 15:28:45 +01:00
Dylan K. Taylor
3836a57ba6
Player: add getPlayerInfo(), closes #4450
2021-09-17 22:17:36 +01:00
Dylan K. Taylor
05e2bef5ce
ItemFactory: fix crash when checking if blockitem IDs are registered
2021-09-16 14:53:19 +01:00
Dylan K. Taylor
6cf181b579
LevelDB: Use arrow functions for better readability
2021-09-16 14:44:56 +01:00
Dylan K. Taylor
9490b78640
Move packet handler default implementations to BedrockProtocol
...
in many cases this will now require zero changes to PM at all to be compatible with a new protocol version.
2021-09-15 22:27:49 +01:00
Dylan K. Taylor
a1c82da2f2
Liquid: remove useless continue
2021-09-12 16:03:52 +01:00
Dylan K. Taylor
84170ad3e1
Furnace: fixed deactivation after being reloaded from disk (regression from PM3)
...
closes #4430
2021-09-12 15:49:33 +01:00
Dylan K. Taylor
ace8841d5d
Explosion: allow the normal blockupdate mechanism to deal with explosions
...
in PM4, all blockupdates are buffered, so the old 7x performance penalty that used to be incurred by doing this is no longer a problem.
Also, this actually reduces the overhead of explosions themselves by moving the onNearbyBlockChange() burden off explodeB() and into the main world ticking function.
2021-09-12 15:45:02 +01:00
Dylan K. Taylor
5ddd94b7e8
Remove redundant World->isChunkGenerated() calls
...
isChunkGenerated() merely checks if the chunk can be loaded from disk, if it's not in the runtime cache already.
This is pointless in all of these cases, because the check is prefaced by an isChunkLoaded() check, which already limits the possibility anyway. If the chunk is not generated, it'll also be considered not loaded.
2021-09-12 15:21:09 +01:00
Dylan K. Taylor
f0fa561c2f
World: use arrow functions in useBreakOn()
2021-09-12 15:16:55 +01:00
Dylan K. Taylor
273aa8ab42
Drop useless usage translation strings for commands with no parameters
2021-09-11 17:06:26 +01:00
Dylan K. Taylor
3b7580688c
Stop auto-translating string descriptions/usages for commands
...
Require usage of Translatable for translations.
2021-09-11 16:46:40 +01:00
Dylan K. Taylor
b65e3c69b1
4.0.0-BETA3 is next
2021-09-10 17:18:32 +01:00