8065 Commits

Author SHA1 Message Date
Dylan K. Taylor
4142666df8 Level: clean up and remove checkTime() 2018-08-06 19:00:00 +01:00
Dylan K. Taylor
fb0cc0804c Merge branch 'release/3.2' 2018-08-06 18:45:53 +01:00
Dylan K. Taylor
09dadc72bc Merge branch 'release/3.1' into release/3.2 2018-08-06 18:45:08 +01:00
Dylan K. Taylor
e33d1279fa Merge branch 'release/3.0' into release/3.1 2018-08-06 18:45:01 +01:00
Dylan K. Taylor
9e1fa453ad Level: Fixed leak of global packets when no players are online
If a global packet was broadcasted when no players were online, it would be held in memory indefinitely (until a player joined).
2018-08-06 18:44:53 +01:00
Dylan K. Taylor
ff6d590d0c PlayerInventory: Send updates to viewers automatically on setItemInHand() 2018-08-05 19:31:21 +01:00
Dylan K. Taylor
c90e3e351d PlayerBlockPickEvent: remove setResultItem()
the same behaviour can be achieved by cancelling the event and setting the held item manually. Allowing this to be changed increases the complexity of dealing with survival block picking.
2018-08-05 19:07:23 +01:00
Dylan K. Taylor
6fcb221453 Remove useless crap from ChunkLoader interface
these methods are not used anywhere and are unnecessary extra baggage for any implementation.
2018-08-05 18:38:51 +01:00
Dylan K. Taylor
90f80782d4 Player: remove useless return value from dropItem() 2018-08-05 12:55:12 +01:00
Dylan K. Taylor
ea9415961b Player: remove useless check from dropItem()
the transaction system will deal with this now, and if a plugin wants to make a player drop a null item, they are free to do so.
2018-08-05 12:53:31 +01:00
Dylan K. Taylor
5df56a1bac Clean up some AnimatePacket boilerplate code 2018-08-05 12:39:36 +01:00
Dylan K. Taylor
d81388f62c Merge branch 'release/3.2' 2018-08-05 12:21:06 +01:00
Dylan K. Taylor
ca541032ae Move Player death message derivation to PlayerDeathEvent static method
This now no longer requires a Player to operate, only a player name.
2018-08-05 12:19:16 +01:00
Dylan K. Taylor
ac832f94a8 Merge branch 'release/3.2' 2018-08-05 11:33:20 +01:00
Dylan K. Taylor
bcf9915082 Merge branch 'release/3.1' into release/3.2 2018-08-05 11:33:11 +01:00
Dylan K. Taylor
6a05edb4e9 Merge branch 'release/3.0' into release/3.1 2018-08-05 11:33:02 +01:00
Dylan K. Taylor
70635d0870 DropItemAction: Consider invalid if the target item is null
it's not possible to drop a null item.
2018-08-05 11:32:50 +01:00
Dylan K. Taylor
a5383b4a82 Use SetLocalPlayerAsInitializedPacket for spawning, fixed a bunch of bugs
this should fix forms not working during PlayerJoinEvent, and also removes the spurious PlayerItemHeldEvent firing on spawn bug.

The player MUST now send this packet. Bots take note.
2018-08-05 10:45:41 +01:00
Dylan K. Taylor
25660843c5 Player: Obliterate InventoryTransactionPacket handler, add some new methods 2018-08-04 20:01:32 +01:00
Dylan K. Taylor
905c0c825c Merge branch 'release/3.2' 2018-08-04 16:47:35 +01:00
Dylan K. Taylor
8d6dc4e188 Merge branch 'release/3.1' into release/3.2 2018-08-04 16:47:26 +01:00
Dylan K. Taylor
46bd096f06 3.1.4 is next 2018-08-04 16:46:51 +01:00
Dylan K. Taylor
51a8905fb3 Release 3.1.3 3.1.3 2018-08-04 16:41:16 +01:00
Dylan K. Taylor
f954d7c3dc Bring 3.1 up to speed with 3.0 2018-08-04 16:40:40 +01:00
Dylan K. Taylor
7ad0aa56b1 3.0.11 is next 2018-08-04 16:39:53 +01:00
Dylan K. Taylor
1ff6f8846e disable dev flag 3.0.10 2018-08-04 16:30:23 +01:00
Dylan K. Taylor
83077309ef Merge branch 'release/3.2' 2018-08-04 16:03:46 +01:00
Dylan K. Taylor
20f3b82d52 Be less dependent on AsyncTask->onCompletion() Server parameter
this is going to get removed soon.
2018-08-04 15:56:14 +01:00
Dylan K. Taylor
12d8d925c8 TimingsCommand: check for instances of InternetException only 2018-08-04 14:59:31 +01:00
Dylan K. Taylor
f3f229ef7c Internet: only catch InternetExceptions - anything else is an unexpected fault condition 2018-08-04 14:51:26 +01:00
Dylan K. Taylor
779d92c656 BulkCurlTask: Remove complexData parameter (BC break)
This is a leftover from when it was necessary to pass complex data to the AsyncTask constructor in order to have it locally-stored. Since this has now been superseded by storeLocal(), it doesn't make sense for this parameter to exist anymore.
2018-08-04 14:44:20 +01:00
Dylan K. Taylor
2cb6307e5b Merge branch 'release/3.2' 2018-08-03 20:08:01 +01:00
Dylan K. Taylor
6614183c7f Merge branch 'release/3.1' into release/3.2 2018-08-03 20:07:52 +01:00
Dylan K. Taylor
e6f53cc56b Merge branch 'release/3.0' into release/3.1 2018-08-03 20:07:46 +01:00
Dylan K. Taylor
87f458f9bd AsyncPool: remove now-unnecessary isTerminated() call 2018-08-03 20:07:37 +01:00
Dylan K. Taylor
5a7e575c3a AsyncPool: isCrashed() now returns true when a fatal error occurred
the fix for chunks earlier didn't fix...
2018-08-03 20:06:41 +01:00
Dylan K. Taylor
2170411cf8 Merge branch 'release/3.2' 2018-08-03 18:50:37 +01:00
Dylan K. Taylor
7ebf3c7bf4 Merge branch 'release/3.1' into release/3.2 2018-08-03 18:50:22 +01:00
Dylan K. Taylor
20b37d0208 Merge branch 'release/3.0' into release/3.1 2018-08-03 18:50:14 +01:00
Dylan K. Taylor
d6d98183ea MainLogger: Log messages and exception traces in a synchronized block
this ensures that stack traces are emitted coherently without messages from other threads landing in the middle.
2018-08-03 18:50:06 +01:00
Dylan K. Taylor
425b1aa6f5 Merge branch 'master' of https://github.com/pmmp/pocketmine-mp 2018-08-03 18:25:21 +01:00
Dylan K. Taylor
588d6c4b26 Merge branch 'release/3.2' 2018-08-03 18:24:50 +01:00
Dylan K. Taylor
334caaaa34 Merge branch 'release/3.1' into release/3.2 2018-08-03 18:24:44 +01:00
Dylan K. Taylor
89cf76363f Merge branch 'release/3.0' into release/3.1 2018-08-03 18:24:36 +01:00
Dylan K. Taylor
9ff5c65fb6 Level: Make async chunk sending aware of faults
Previously any random error could occur during an AsyncTask preparing a chunk, and the Level would never know about it and thus never send the chunk.

I don't know how many invisible-chunk bug cases this fixes, but I expect it's quite a lot.
2018-08-03 18:23:32 +01:00
Dylan K. Taylor
1532b0ef6d Level: Remove chunks from chunk send queue on unload
When a chunk request task crashes, these can get stuck and never get removed. This allows using /gc to collect the bad chunk in order to fix the bug.
2018-08-03 18:04:56 +01:00
Dylan K. Taylor
0e44e5b681
Update ISSUE_TEMPLATE.md 2018-08-03 09:02:53 +01:00
Dylan K. Taylor
10ba3d6359 Network: add ability to tick sessions
moved responsibility for login timeout checks to NetworkSession instead of Server
2018-08-02 17:39:09 +01:00
Dylan K. Taylor
e43496e7e4 Network: clean up ticking handling, RakLib only processes on Snooze notification 2018-08-02 17:14:21 +01:00
Dylan K. Taylor
7560880168 Added DataPacketBroadcastEvent, refactor broadcast handling, close #1521
batchPackets() is now considered internal and shouldn't be used by plugins.

Added Server->broadcastPackets(Player[], DataPacket[]) : bool
2018-08-02 15:54:30 +01:00