12468 Commits

Author SHA1 Message Date
Dylan K. Taylor
4fed08bcd4 ProtocolInfo: fixed version number 2020-06-26 14:15:58 +01:00
Dylan K. Taylor
e990c5a0a5 Protocol changes for 1.16.0 2020-06-26 14:06:41 +01:00
Dylan K. Taylor
d8a8f5b77a phpstan: ignore a new error caused by 52fd1a8c1d86b54d53cceb99ec07892130ca136b 2020-06-26 13:54:30 +01:00
Dylan K. Taylor
c616d9bb7c 3.13.2 is next 2020-06-26 12:31:56 +01:00
Dylan K. Taylor
81051441ba Release 3.13.1 3.13.1 2020-06-26 12:31:56 +01:00
Dylan K. Taylor
3ecae0db19 WindowTypes: fill in a couple of blanks 2020-06-26 12:04:11 +01:00
Dylan K. Taylor
c5bbb2bcbc Move crafting action detection from InventoryTransactionPacket to Player 2020-06-26 11:59:30 +01:00
Dylan K. Taylor
24a2889758 NetworkInventoryAction does not require an InventoryTransactionPacket 2020-06-26 11:51:06 +01:00
Dylan K. Taylor
60b26a7ea8 NetworkBinaryStream: unknown byte preceding NBT is a version, not a count 2020-06-26 11:47:08 +01:00
Dylan K. Taylor
22b52f03d1 Player: fixed formatting error in InteractPacket debug message 2020-06-26 11:44:41 +01:00
Matt
df76c02e7a
Explicitly release server.lock file when shutdown the server. (#3619)
Previously, this relied on PHP itself to release locks during the resource destructor phase during process exit, but sometimes it doesn't for god knows what reason. This change makes the lock file get explicitly released before the process dies.
2020-06-26 11:41:39 +01:00
Dylan K. Taylor
d343187e58 phpstan: drop 2 obsolete level 8 error patterns fixed by 763c8ebfe3bb8a597768d86040fee130c8fc7ab8 2020-06-23 12:57:25 +01:00
Dylan K. Taylor
c5ad127854 BaseInventory: mark eventProcessor as nullable, fixes a phpstan level 8 error 2020-06-23 12:55:06 +01:00
Dylan K. Taylor
0f6dc9082a lock phpstan at 0.12.29
0.12.30 starts reporting non-ignorable errors for overriding Thread::start() due to outdated stubs for pthreads that I can't replace
2020-06-22 20:57:12 +01:00
Dylan K. Taylor
2b6dcbc2e2 BaseLang: fixed passing onlyPrefix to str_replace()'s count reference parameter 2020-06-22 20:34:23 +01:00
Dylan K. Taylor
52fd1a8c1d CommandSender: export getLanguage()
this currently serves as a proxy to the server main language, but it can be used by third party implementations to choose a non-Server language.
2020-06-22 20:05:23 +01:00
Dylan K. Taylor
097fc7e6cb phpstan: clean out some more dead error patterns 2020-06-22 19:59:57 +01:00
Dylan K. Taylor
5c3d39f4e2 phpstan: clean out some level 8 error patterns that no longer apply 2020-06-22 19:56:00 +01:00
Dylan K. Taylor
137605ab8c Position: make World constructor parameter required 2020-06-22 14:15:27 +01:00
Dylan K. Taylor
5e0d635562 Resource packs: modules field is required in manifest.json 2020-06-21 23:19:15 +01:00
Dylan K. Taylor
763c8ebfe3 Thread/Worker: drop nullability flag from start() (fixed in pthreads 3.2.0, which we require as a minimum) 2020-06-21 19:07:01 +01:00
Dylan K. Taylor
c572e9bb6a phpstan: regenerate l7 baseline 2020-06-21 18:58:41 +01:00
Dylan K. Taylor
a920baa295 resource packs: use JsonMapper for manifest parsing 2020-06-21 18:47:27 +01:00
Dylan K. Taylor
89521f166d Explosion: account for multi-block structures, fixes #2767 2020-06-21 17:28:38 +01:00
Dylan K. Taylor
1ef6e5e17b TileFactory now only manages loading tiles from NBT, not direct creation
my objective is to make this use proper constructors like entities, but there's a couple of obstacles to get around first.
2020-06-21 00:47:02 +01:00
Dylan K. Taylor
1f90aa07aa Merge branch 'stable'
# Conflicts:
#	resources/vanilla
#	src/command/defaults/TeleportCommand.php
#	src/pocketmine/event/entity/EntityDespawnEvent.php
#	src/pocketmine/event/entity/EntityInventoryChangeEvent.php
#	src/pocketmine/event/entity/EntityLevelChangeEvent.php
#	src/pocketmine/event/entity/EntitySpawnEvent.php
#	tests/phpstan/configs/actual-problems.neon
2020-06-21 00:30:45 +01:00
Dylan K. Taylor
49d3a42120 phpstan: make EntityEvent generic, fix a bunch of 'actual-problems' ignored errors 2020-06-21 00:27:32 +01:00
Dylan K. Taylor
c523595e85 Rewrite TeleportCommand (sadly I can't make this commit any smaller)
this pile of shit was overdue a rewrite. The new version is much easier to understand.
2020-06-21 00:04:18 +01:00
Dylan K. Taylor
7c7e4f2093 WhitelistCommand: fixed silence on unknown subcommand 2020-06-20 23:05:39 +01:00
Dylan K. Taylor
88c1014f03 TimingsCommand: fixed silence when using a nonexisting subcommand 2020-06-20 23:04:08 +01:00
Dylan K. Taylor
a16de8747e Explosion: stop using Vector3->setComponents()
this kills two birds with one stone: this inlined version of the logic should be faster than the vector-abusing version.
2020-06-20 22:19:37 +01:00
Dylan K. Taylor
bf5c06f285 World: get rid of temporalPosition too (entirely unused) 2020-06-20 21:45:35 +01:00
Dylan K. Taylor
fc7672c6ba World: remove temporalVector (premature cold path optimisation again) 2020-06-20 21:44:05 +01:00
Dylan K. Taylor
80e150c803 Entity: get rid of temporalVector mutation
except for checkBlockCollision, these are all cold paths ... this gets us one step closer to immutable Vector3
2020-06-20 21:41:19 +01:00
Dylan K. Taylor
42637f97c6 Liquid: eliminate some unnecessary Vector3 field mutations 2020-06-20 21:32:24 +01:00
Dylan K. Taylor
d38c17835d Properly switch to string entity IDs 2020-06-20 13:43:31 +01:00
Dylan K. Taylor
a988578ee0 protocol: move PotionType and PotionContainerChange recipes to types/recipe namespace 2020-06-20 11:43:47 +01:00
Dylan K. Taylor
0784bfa2fb phpstan: drop another pattern that was fixed by recent changes 2020-06-20 11:30:14 +01:00
Dylan K. Taylor
032dc57090 phpstan recognizes the existence of parallel\bootstrap now 2020-06-20 11:29:45 +01:00
Dylan K. Taylor
6be56de3ed clean some newly fixed errors from phpstan baselines 2020-06-20 11:24:39 +01:00
Dylan K. Taylor
d5db163208 protocol: added proper object wrappers for gamerules 2020-06-20 11:24:39 +01:00
Dylan K. Taylor
d2089afbc3 ItemBlock: get rid of -1 meta check (meta is never -1 in this code path now) 2020-06-20 09:52:02 +01:00
Dylan K. Taylor
62e7b0e2b1 (Splash)Potion: do not assume that META == potion ID
it probably will be, but meta might not be accessible anymore soon.
2020-06-20 09:31:06 +01:00
Dylan K. Taylor
d62d0762ff item: remove some unnecessary CompoundTag usages 2020-06-19 22:59:19 +01:00
Dylan K. Taylor
4e8e10ca45 EntityFactory: remove obsolete indirection (class mappings are redundant here now) 2020-06-19 22:18:42 +01:00
Dylan K. Taylor
0a43fd816c EntityFactory: drop unnecessary @param 2020-06-19 22:10:35 +01:00
Dylan K. Taylor
47baaf4c72 move NBT helper functions from EntityFactory to EntityDataHelper 2020-06-19 22:04:36 +01:00
Dylan K. Taylor
1a3445f4b5 EntityFactory: drop automatic provisioning of short class name as save ID 2020-06-19 22:03:22 +01:00
Dylan K. Taylor
012acdd4cb move runtime entity ID counter from EntityFactory back to Entity
EntityFactory is specialized for the purpose of deserializing data from worlds, and runtime ID assignment isn't related.
2020-06-19 21:55:49 +01:00
Dylan K. Taylor
6d3750994b EntityFactory: remove dead function 2020-06-19 21:54:23 +01:00