Dylan K. Taylor
ac7384a2b4
Re-organise some Player methods
...
- group spawn-related methods
- group achievement-related methods
- move isSleeping()
- group name-related methods
- move Player->sendAllInventories()
- move Player->jump()
2017-10-09 10:25:33 +01:00
Dylan K. Taylor
748beaaaa7
Changed a couple of very misleading default values
...
why on earth did I do this
2017-10-09 09:55:18 +01:00
Dylan K. Taylor
58788b4bc7
Removed some unnecessary stuff PhpStorm complained about
2017-10-09 09:46:21 +01:00
Dylan K. Taylor
ae76ac82c8
Removed unnecessary delegate packet handlers
...
let's keep all the TODOs in one place
2017-10-09 09:44:22 +01:00
Dylan K. Taylor
e4000f8f03
Reorganise some packet methods in Player
2017-10-09 09:35:31 +01:00
Dylan K. Taylor
ebcce43131
Don't hold player references for hiddenPlayers
...
they aren't needed, and this is just one more thing that could go wrong in Player->close() that could lead to leaks.
2017-10-09 09:20:44 +01:00
Dylan K. Taylor
1a88f59b23
Moved some stuff from join to login
...
this is how it should be
2017-10-08 19:38:03 +01:00
Dylan K. Taylor
fdfe70b9f2
Removed entity metadata setting from LoginPacket handler
...
why the f was this here
2017-10-08 19:10:49 +01:00
Dylan K. Taylor
3bda1473e7
Removed outdated documentation for Player->getClientId()
2017-10-08 18:47:13 +01:00
Dylan K. Taylor
29cd071108
Added some documentation on player UUIDs
2017-10-08 18:40:27 +01:00
Dylan K. Taylor
1810088acf
Use Player->isCreative()
2017-10-08 18:17:12 +01:00
Dylan K. Taylor
51e4a62e7b
Use setUsingItem() instead of directly setting data flags
2017-10-08 18:03:19 +01:00
Dylan K. Taylor
aa91183504
Added Durable class, fixed some tools not breaking correctly, removed some boilerplate code
2017-10-08 15:54:31 +01:00
Matt
5b9515b20f
Peaceful difficulty allows PvP
2017-10-08 13:57:25 +02:00
Sandertv
81dee2f9fc
Adding writable and written books. ( #1397 )
...
* Adding writable and written books.
* Added a PlayerEditBookEvent.
* Changed BookEditPacket field names.
2017-10-08 11:49:57 +01:00
Dylan K. Taylor
628ff9449e
Fixed respawn fall damage when dying while falling from causes other than fall damage
...
tl;dr: fall distance didn't get reset
2017-10-05 16:47:50 -04:00
Dylan K. Taylor
fc9c264e77
Resend blocks around targeted blocks when interactions & block-break are cancelled, fixes #906
...
this solution is dumber but more effective (also solves the beds & doors placement problem)
2017-10-03 19:28:01 +01:00
Dylan K. Taylor
9bbebaa071
Force-close the inventory window when crafting fails to avoid desync issues
...
mojang, why does this have to be hard work
2017-10-03 11:04:21 +01:00
Dylan K. Taylor
76117e7fa0
Get XUID from LoginPacket after authentication, add Player->getXuid()
2017-10-02 18:51:51 +01:00
Dylan K. Taylor
b54f256fea
Added a hack to cut down on excess skin geometry bloat
...
there are further ways this can be debloated, but non-pretty-printing it cuts the size down by ~70-80%.
2017-10-01 16:50:16 +01:00
Dylan K. Taylor
ab5bbaa7bd
Remove redundant property from Player
2017-10-01 12:19:11 +01:00
Dylan K. Taylor
e6cecabf3f
New skin API, add support for custom capes & custom geometry ( #1416 )
...
* Added support for changing skins ingame, custom capes & geometry
* Use PlayerSkinPacket for setting Human skin instead of PlayerList hack
2017-09-29 14:09:00 +01:00
Dylan K. Taylor
c273a46537
Ditch crafting transaction if we get normal inventory action with incomplete crafting transaction
2017-09-28 20:07:07 +01:00
Dylan K. Taylor
9bc8d8db79
Revert "Add buffering for non-immediate priority packets to reduce compression overhead"
...
This reverts commit 2162675b6400807cf650f6fc7ad236c52fa99c01.
This broke Human skins... it seems MCPE doesn't like you adding and
removing a player from the list in the same batch.
2017-09-28 14:29:17 +01:00
Dylan K. Taylor
d0bf0ff083
Imports cleanup
2017-09-28 10:51:05 +01:00
Dylan K. Taylor
2162675b64
Add buffering for non-immediate priority packets to reduce compression overhead
2017-09-27 14:06:42 +01:00
Dylan K. Taylor
8f63117dac
Use try...finally in Player->sendDataPacket() so we don't forget to stop timings
2017-09-27 13:52:25 +01:00
Dylan K. Taylor
992c4ce6a0
Added API method Block->getVariant()
2017-09-26 19:35:04 +01:00
Dylan K. Taylor
13d50aff62
don't break bows, stupid
2017-09-26 12:20:40 +01:00
Dylan K. Taylor
5b191327bc
Fixed players' arms staying stuck up after eating something
2017-09-26 12:14:10 +01:00
Dylan K. Taylor
38fad4b963
Implement difficulty per-world ( #878 )
...
* Moved Server::getDifficultyFromString() to Level
* Added ability to set difficulty in worlds section of pocketmine.yml for generation
2017-09-26 11:16:51 +01:00
Dylan K. Taylor
e64076ec81
Disconnect 1.1 clients properly (HACK!)
2017-09-26 10:01:32 +01:00
Dylan K. Taylor
6e5759b1d1
Made incompatible client disconnect messages more informative
2017-09-25 14:30:11 +01:00
Dylan K. Taylor
03d3e595d6
Implement JWT signature verification and Xbox Live checks, close #315
...
This can be enabled or disabled using the "online-mode" directive in
server.properties.
NOTE: For safety reasons it is enabled by default, since many naive server owners currently believe that authentication is not needed because "the client is forced to sign-in".
Newsflash for readers: the forced authentication is easily bypassed using a LAN proxy.
Un-authenticated LAN connections will still work fine if the online mode is disabled.
Added the following API methods:
- Server->getOnlineMode() : bool
- Server->requiresAuthentication() : bool
- Player->isAuthenticated() : bool
JWT verification is rather expensive, so it is done in an AsyncTask. Make sure you don't hog your worker threads.
2017-09-25 12:30:58 +01:00
Dylan K. Taylor
3c02a6a8ed
Fixed eating sounds
2017-09-24 21:18:08 +01:00
Dylan K. Taylor
240cc3043a
Rewritten crafting, fixed #45
2017-09-24 14:14:24 +01:00
Dylan K. Taylor
178dd1b981
Fixed block picking, added PlayerBlockPickEvent
2017-09-23 14:42:28 +01:00
Dylan K. Taylor
826ec90856
Revert "Workaround for some plugins crashing clients during PlayerLoginEvent"
...
This reverts commit 087a994393be23f694c6d0585bcd3797a15bf50b.
2017-09-23 13:23:19 +01:00
Dylan K. Taylor
0523f26613
Send forced movement when getting bad movements after teleport, fixes AlwaysSpawn-type plugins
...
it's mostly harmless to send it here anyway
2017-09-23 12:49:46 +01:00
Dylan K. Taylor
d0a96f35da
./ hack is back (/help is client-side >_<)
2017-09-21 17:51:39 +01:00
Dylan K. Taylor
dbed80386a
Removed redundant interface
2017-09-21 12:22:47 +01:00
Dylan K. Taylor
61cfdac6a1
Fixed a mistake in entity attack handler
2017-09-21 10:18:52 +01:00
Dylan K. Taylor
fd7fb10223
Return null on unmatched inventory action and log details
2017-09-20 18:38:14 +01:00
Dylan K. Taylor
55720d9f0a
Added InventoryAction->onPreExecute(), fixed PlayerDropItemEvent deleting items
2017-09-20 12:19:42 +01:00
Dylan K. Taylor
f0755d1659
Fixed handling of recipes that require a crafting table
2017-09-20 09:43:49 +01:00
Dylan K. Taylor
8cae20e818
Removed hotbar slot linking (works like PC now)
2017-09-19 18:36:57 +01:00
Dylan K. Taylor
361b262d3a
Merge branch 'master' into mcpe-1.2
2017-09-18 10:29:38 +01:00
Dylan K. Taylor
a99eee9def
Removed redundant assignment
2017-09-17 20:01:11 +01:00
Dylan K. Taylor
0f37bc35ba
Always evacuate the crafting grid on close, no matter whether it's big or not
...
otherwise items will get deleted and people will cry
2017-09-16 21:58:10 +01:00
Dylan K. Taylor
8dc3d019f6
Return handled on fake window close
2017-09-16 21:55:25 +01:00