10191 Commits

Author SHA1 Message Date
Dylan K. Taylor
075f49aef0 don't send double disconnect messages 2019-06-18 16:22:41 +01:00
Dylan K. Taylor
709963f90a shut up PhpStorm 2019-06-18 16:07:43 +01:00
Dylan K. Taylor
b18bd4f33c rename SessionHandler -> PacketHandler 2019-06-18 16:02:46 +01:00
Dylan K. Taylor
87c3636d44 ResourcePacksSessionHandler: moar debug 2019-06-18 15:10:58 +01:00
Dylan K. Taylor
94299534b3 NetworkSession: fix some blind spots on logging 2019-06-18 15:01:44 +01:00
Dylan K. Taylor
9df2ca3655 fixup some formatting issues 2019-06-18 14:12:37 +01:00
Dylan K. Taylor
bb675ac99b Set parallel bootstrap file if the extension is loaded 2019-06-18 14:05:39 +01:00
Dylan K. Taylor
7b049b6db1 NetworkSession: use a better check for timeout 2019-06-17 17:30:42 +01:00
Dylan K. Taylor
e0a9ea2573 Player: clean up some crazy spawn logic in constructor
this was probably a leftover from some old code, I guess
2019-06-17 17:07:31 +01:00
Dylan K. Taylor
db3305cb16 Remove Entity->isClosed() checks from places where they don't make sense
in all of these cases, this is just potentially concealing bugs. Closed entities should never appear at these points.
2019-06-17 16:39:46 +01:00
Dylan K. Taylor
92e81e3298 Player: move some respawn net sync logic to NetworkSession 2019-06-17 16:27:04 +01:00
Dylan K. Taylor
3c677bd3ec added PermissibleDelegateTrait to cut down boilerplate in Player and ConsoleCommandSender 2019-06-17 16:10:13 +01:00
Dylan K. Taylor
20f092a685 Living: Do not use spl_object_id() for identifying effects
it's possible for these to have different IDs if they were cloned, serialized or copied between threads.
2019-06-17 15:58:33 +01:00
Dylan K. Taylor
fe98b6c765 EnumTrait: rename getEnumName() -> name()
this is more concise and brings it more in line with Java.
2019-06-17 14:55:25 +01:00
Dylan K. Taylor
c45c1c930e SetEntityMotionPacket: Mark as garbage serverbound 2019-06-17 14:22:08 +01:00
Dylan K. Taylor
b344427a30 Added a hack to allow dropping garbage serverbound packets sent by a buggy client 2019-06-17 14:20:29 +01:00
Dylan K. Taylor
698193622a WorldManager: rename get/setAutoSaveTicks() to get/setAutoSaveInterval()
this is less ambiguous.
2019-06-16 18:23:13 +01:00
Dylan K. Taylor
4878fc4c93 Merge branch 'stable' 2019-06-16 17:18:17 +01:00
Dylan K. Taylor
cd48d8272c added changelog for 3.8.5 2019-06-16 17:17:21 +01:00
Dylan K. Taylor
6d09460abc Merge branch 'changelogs' into stable 2019-06-16 17:12:57 +01:00
Dylan K. Taylor
b71bb867f4 DefaultPermissions: remove pocketmine.command.reload 2019-06-16 16:52:47 +01:00
Dylan K. Taylor
94180cda72 Merge branch 'next-minor' 2019-06-16 16:42:05 +01:00
Dylan K. Taylor
5a17a0d1aa Merge branch 'stable' into next-minor 2019-06-16 16:37:23 +01:00
Dylan K. Taylor
b38c81c96f backport f84a1729c: Inventory: added swap() function 2019-06-16 16:35:34 +01:00
Dylan K. Taylor
0fabc0c199 backport b8d1eb20b: EntityDeathEvent: add XP amount API, closes #2690 2019-06-16 16:31:03 +01:00
Dylan K. Taylor
0ca07ad075 Fire QueryRegenerateEvent every 1 second instead of every 25, fixes #2670 2019-06-16 16:17:06 +01:00
Dylan K. Taylor
60b183b0d9 backport a753c1342: Clean up Query cache handling, remove useless timeouts
the timeout was entirely useless, because:
- when shorter than 25.6 seconds (512 ticks) it would cause caches to be needlessly destroyed and regenerated
- when longer than 25.6 seconds, just made outdated caches persist for longer, even after the query info was regenerated.

This now uses a mark-dirty model to deal with caches, which means that plugin modifications to the query data will be reflected immediately, regardless of when they are made. Previously, modifying the result of Server->getQueryInformation() would have inconsistent results.
2019-06-16 16:08:27 +01:00
Dylan K. Taylor
ec5598dbb1 Deprecate things removed in acb794e72 and 97c836f19 2019-06-16 15:37:27 +01:00
Dylan K. Taylor
5d3b4f23a3 Merge branch 'next-minor' 2019-06-16 14:52:37 +01:00
Dylan K. Taylor
7b98d203f4 Merge branch 'stable' into next-minor 2019-06-16 14:47:01 +01:00
Dylan K. Taylor
dbf4054b1f backport 209135492: UUID: add type docs 2019-06-16 14:44:13 +01:00
Dylan K. Taylor
82e4ef6d48 backport d8c81c0a1: UUID: remove useless default values
these are overwritten by the constructor, so they have no use here.
2019-06-16 14:43:28 +01:00
Dylan K. Taylor
4635b93f4d backport 23071d257 + deprecations: Extract process-related functions from Utils into a separate Process class 2019-06-16 14:40:51 +01:00
Dylan K. Taylor
a8433697ad backport aaaddd1fd: Terminal: stick a RESET on the end when writing a newline 2019-06-16 14:25:16 +01:00
Dylan K. Taylor
d0d300a6f8 backport 342b48b75: VersionString: Use the correct bitwise operators 2019-06-16 14:21:02 +01:00
Dylan K. Taylor
680cdb8e3e backport f5dbbea5f: Utils: added recursiveUnlink() 2019-06-16 14:20:05 +01:00
Jack M. Taylor
eaa78fe849 backport 205e13d88: Config: add getPath() (#2758)
Config->getPath() returns the path of the config i.e. the place where the config file is located.
2019-06-16 14:18:50 +01:00
Dylan K. Taylor
eedea4998b Terminal: Added write() and writeLine() to allow easily emitting Minecraft-formatted text to the console 2019-06-16 14:16:14 +01:00
Dylan K. Taylor
4e5a80c481 Recipe: deprecate interface 2019-06-16 14:12:49 +01:00
Dylan K. Taylor
4d54dc30c1 crafting: deprecate some stuff that's been removed on bleeding edge 2019-06-16 14:11:08 +01:00
Dylan K. Taylor
ac5339414a Merge branch 'stable' into next-minor
# Conflicts:
#	build/preprocessor
2019-06-16 14:08:06 +01:00
Dylan K. Taylor
6161155660 CraftingManager: micro optimization: reuse closure for item deserialize & reduce indirection 2019-06-16 14:05:37 +01:00
Dylan K. Taylor
2a5561fcd1 added more MultiRecipe UUIDs 2019-06-15 19:51:59 +01:00
Dylan K. Taylor
4e734989bc fixing add/remove items from anvil & enchanting table
the functionality of these don't work yet, but the inventories work more correctly now.
2019-06-15 18:56:42 +01:00
Dylan K. Taylor
93b83b4189 Player: Window system now only allows 1 window at a time 2019-06-15 18:19:09 +01:00
Dylan K. Taylor
312a755a27 Player: rename $windows to $inventoryNetworkIdMap 2019-06-15 15:51:43 +01:00
Dylan K. Taylor
a94541c531 Split CreativeInventoryAction into two new action types 2019-06-15 14:40:15 +01:00
Dylan K. Taylor
4bbf1d56dc NetworkInventoryAction: shorten exception message
This is logged with the network session's logger, which provides context information already.
2019-06-15 14:27:11 +01:00
Dylan K. Taylor
50a7fc0ba3 Rework inventory window open/close handling
- This fixes InventoryOpenEvent and InventoryCloseEvent being fired for persistent windows. Close #2950
- The ability to specify a custom network ID to assign the inventory to in addWindow() has been removed.
- The ability to assign a non-removable window in addWindow() has been removed.
- The ability to remove non-removable windows in removeWindow() and removeAllWindows() has been removed. This was previously needed for internal purposes.
2019-06-15 14:23:02 +01:00
Dylan K. Taylor
c77e75fa93 FastChunkSerializer: fix typo 2019-06-14 19:42:50 +01:00