7676 Commits

Author SHA1 Message Date
Dylan K. Taylor
f1cab91ac9 Config: fixed interpreting invalid keys as empty strings
these should just be ignored completely.
2018-07-08 11:50:17 +01:00
Dylan K. Taylor
258b4f9dde ChunkRequestTask: add docs and typehints 2018-07-07 19:35:40 +01:00
Dylan K. Taylor
78d27dc3e4 Move ChunkRequestTask to pocketmine\network\mcpe namespace
it has a lot to do with network and little to do with world I/O (load/save).
2018-07-07 19:34:11 +01:00
Dylan K. Taylor
7e7cd6c995 Merge branch 'release/3.1' 2018-07-07 19:22:51 +01:00
Dylan K. Taylor
e0bc9c5e96 back to dev 2018-07-07 19:20:55 +01:00
Dylan K. Taylor
32574118ea
Implemented Mending enchantment (#2257) 2018-07-06 13:28:33 +01:00
Dylan K. Taylor
b23c947060 Merge branch 'release/3.1' 2018-07-06 13:12:22 +01:00
Dylan K. Taylor
5a3135659b Merge branch 'release/3.0' into release/3.1 2018-07-06 13:12:13 +01:00
Dylan K. Taylor
70caa00266 disable dev flag for release 2018-07-06 12:59:02 +01:00
Dylan K. Taylor
ee7c838040 LoginPacket: barf on finding extraData multiple times
this fixes a potential exploit where clients could append JWTs signed with their own keys to the end of the chain containing fake XUID/UUID/username which would then overwrite the legitimate ones in earlier links.
This stems from the fact that the final link of the vanilla chain contains the client's own pubkey, so the client is able to append its own data to the end of the chain.
2018-07-06 12:54:43 +01:00
Dylan K. Taylor
34e9e93210 PluginBase: fixed crashing on getConfig() when data dir doesn't exist
I considered making this instead save the default config instead of creating an empty config file, but that would be (albeit minor) a behavioural change which therefore belongs in 3.1.
2018-07-05 19:59:08 +01:00
Dylan K. Taylor
4ccbb8b21a Merge branch 'release/3.1' 2018-07-05 17:43:19 +01:00
Dylan K. Taylor
b90d7d1839 Merge branch 'release/3.0' into release/3.1 2018-07-05 17:43:11 +01:00
Dylan K. Taylor
5dbb0d177e
Fixed double chest inventory desync issues, closes #2261 (#2279)
chest pairing really needs rewriting... this code really sucks
2018-07-05 17:42:30 +01:00
Dylan K. Taylor
670b940837 PocketMine.php: clean up on platform dependency checks 2018-07-05 17:32:13 +01:00
Dylan K. Taylor
120eb8e362 CompressBatchedTask: move to pocketmine\network\mcpe namespace 2018-07-05 13:38:33 +01:00
Dylan K. Taylor
2907de81ad Apply typehints to more general pocketmine\network namespace 2018-07-05 13:36:23 +01:00
Dylan K. Taylor
950465d283 as always, missed one - I blame PhpStorm 2018-07-05 13:35:04 +01:00
Dylan K. Taylor
2bba3a0805 Apply typehints to pocketmine\network\mcpe\protocol namespace
this is pulled from network-nuke in order to reduce the size of the diff.
2018-07-05 13:19:15 +01:00
Dylan K. Taylor
fbd4f4a849 Merge branch 'release/3.1' 2018-07-05 12:11:26 +01:00
Dylan K. Taylor
6cad7be3ef Merge branch 'release/3.0' into release/3.1 2018-07-05 12:11:12 +01:00
Dylan K. Taylor
28a72a93b4 Chunk: Use an SplFixedArray for heightmap
this goes on 3.1 because it changes the behaviour of chunk cloning, which might possibly break some plugins, and this isn't a bug fix.

This should see no change in behaviour other than a minor performance improvement and slight reduction in memory usage.
2018-07-05 11:58:20 +01:00
Dylan K. Taylor
58f0ad3e3e Command: remove unnecessary getPermission() calls 2018-07-05 10:38:31 +01:00
Dylan K. Taylor
0df3585c81 TellCommand: remove useless strtolower() and temp variable 2018-07-05 09:12:21 +01:00
Dylan K. Taylor
697723b551 DoubleChestInventory: remove redundant clear() override
this calls setItem() which deals with the necessary logic anyway.
2018-07-04 20:06:42 +01:00
Dylan K. Taylor
5926d80525 DoubleChestInventory: fixed wrong logic for setting items into the right-hand side 2018-07-04 20:04:40 +01:00
Dylan K. Taylor
399870bf31 Merge branch 'release/3.1' 2018-07-02 16:58:22 +01:00
Dylan K. Taylor
0f0d12bebc Merge branch 'release/3.0' into release/3.1 2018-07-02 16:58:15 +01:00
Dylan K. Taylor
2252f7498d Merge branch 'release/3.1' 2018-07-02 16:57:01 +01:00
Dylan K. Taylor
dfc11abf2d Level: fixed sendBlocks() documentation 2018-07-02 16:53:48 +01:00
Dylan K. Taylor
17eef9f902 Level: stricten type checks on sendBlocks()
because people are morons
2018-07-02 16:53:00 +01:00
Dylan K. Taylor
49bca0d5a1
Remove a whole bunch of crap from the Plugin public interface (#2268)
- remove onLoad(), onEnable(), onDisable()
- remove Config related methods
- remove getResource(), saveResource(), getResources()

did I troll any readers so far?

On a more serious note, these methods do not need to be declared in this interface because they are either hooks (`onLoad()`, `onEnable()`, `onDisable()`) or methods only used from within `PluginBase` and its children. They are not intended to be public API, and for this reason they don't need to be exposed in the interface.
2018-06-29 20:04:10 +01:00
Dylan K. Taylor
a57ec1b1ba Living: fixed death animation not being played when kill() is used
this fixes players having a random delayed despawn when using /kill on themselves
2018-06-29 16:49:40 +01:00
Dylan K. Taylor
905259a4e1 Fixed not being able to place blocks inside dead players
closes #2265
2018-06-29 16:38:35 +01:00
Dylan K. Taylor
ca6930006c back to dev 2018-06-29 12:30:08 +01:00
Dylan K. Taylor
33eeeb856e disable dev flag 2018-06-29 12:21:56 +01:00
Dylan K. Taylor
4a11ded185 Merge branch 'release/3.1' 2018-06-29 12:19:32 +01:00
Dylan K. Taylor
0afbf6c547 Merge branch 'release/3.0' into release/3.1 2018-06-29 12:19:25 +01:00
Dylan K. Taylor
c43ce5c8fa RCONInstance: apply stfu operator 2018-06-29 12:16:17 +01:00
Dylan K. Taylor
57cfe9fd43 Level: fixed logic for sending changed blocks to players
If there is an empty list of blocks in the changedBlocks array for a chunk, that means that blocks changed the normal way and then were later set the direct way in the same tick. This means that no action needs to be taken on these chunks.
2018-06-29 11:10:31 +01:00
Dylan K. Taylor
d8824e7ee1 Level: discard changed blocks on chunk replace
this could cause issues when plugins replace chunks when blocks in the chunk have been changed on the same tick.
2018-06-29 11:06:33 +01:00
Dylan K. Taylor
3455d0f3b9 Level: cleaned up some nonsensical code in setChunk() 2018-06-29 10:58:31 +01:00
Dylan K. Taylor
fc8dc8a497 Merge branch 'release/3.1' 2018-06-24 17:34:57 +01:00
Dylan K. Taylor
ec2cca04a7 Merge branch 'release/3.0' into release/3.1 2018-06-24 17:34:37 +01:00
Dylan K. Taylor
6b2250cbce RCONInstance: terminate session on ECONNRESET errors 2018-06-24 17:32:51 +01:00
Dylan K. Taylor
8dae497610 back to dev 2018-06-24 17:32:51 +01:00
Dylan K. Taylor
cade15e2dd disable dev flag for release 2018-06-24 16:34:19 +01:00
Dylan K. Taylor
272b76d24c fix Punch mess 2018-06-24 13:43:52 +01:00
Dylan K. Taylor
8c672cb7c8 Implemented Sharpness, Fire Aspect and Knockback enchantments 2018-06-24 12:13:54 +01:00
Dylan K. Taylor
cfee9aa117 Merge branch 'release/3.1' 2018-06-24 12:07:57 +01:00