7727 Commits

Author SHA1 Message Date
Dylan K. Taylor
a5ba716232 Updated block ID mappings for 1.2.14 (thanks again MrARM) 2018-05-02 12:03:29 +01:00
Dylan K. Taylor
db432bb024 Found some things in new packets 2018-05-02 12:03:29 +01:00
Dylan K. Taylor
91486a23a5 some changes for 1.2.14.2 beta 2018-05-02 12:03:29 +01:00
Dylan K. Taylor
d80c471ae1 Typehints on missed sound and particle APIs 2018-05-02 11:44:18 +01:00
Dylan K. Taylor
b4068dfd2f remove unused import 2018-05-02 10:44:05 +01:00
Dylan K. Taylor
3095eb544d Item: removed isTool()
this should be replaced with `instanceof Tool`.
2018-05-01 20:05:53 +01:00
Dylan K. Taylor
0247dff909 Fixed mis-uses of Item->isTool()
this has been wrongly used to indicate a durable item, but not just tools are durable items.
2018-05-01 20:05:02 +01:00
Dylan K. Taylor
5368120f13 Level: remove redundant getAutoSave() condition in close()
this is already checked by save() anyway.
2018-05-01 18:47:08 +01:00
Dylan K. Taylor
2e7db552dc Level: __construct() now accepts a LevelProvider object instead of string, string
This is made possible by the removal of LevelProvider dependence on their Levels, and furthers the goal of #2024.
2018-05-01 18:43:11 +01:00
Dylan K. Taylor
53c35aaa1d Server: remove unused variable from generateLevel() 2018-05-01 18:26:03 +01:00
SOFe
3293074cfc Implement @softDepend annotation for event handlers - skip registering if the event class is undefined (#2162)
This allows plugins to soft-depend on other plugins without separating their listeners into a dedicated class for listening to that plugin.

This can be utilized by adding a `@softDepend PluginName` to the event handler's annotations.
If the plugin providing the event does not exist or is not loaded, then the handler will silently not be registered.
If it does exist and the event is not found, the original behaviour applies and an exception will be thrown.

This change should be fully backwards compatible.
2018-05-01 14:33:24 +01:00
Dylan K. Taylor
d8f4dde5f3 PlayerHotbarPacket: remove unused import 2018-05-01 14:09:17 +01:00
Dylan K. Taylor
dfa6cd2b7e Biome: Moved biome classes from level\generator\* to level\biome 2018-05-01 14:07:46 +01:00
Dylan K. Taylor
e03d2b23f7 Sign: add some typehints where it wasn't previously possible 2018-05-01 14:00:23 +01:00
Dylan K. Taylor
96a2fd7482 Server: fixed wonky doc comment for broadcastTitle() 2018-05-01 12:30:06 +01:00
Dylan K. Taylor
88c56bcdc8 Server: move formattingCodes check to initial assignment of doTitleTick 2018-05-01 12:21:41 +01:00
Dylan K. Taylor
2731fc3d0f Server: remove redundant return value from tick() 2018-05-01 12:17:11 +01:00
Dylan K. Taylor
a02f178f80 PocketMine.php: add git hash length check "just in case" 2018-04-29 18:07:40 +01:00
Dylan K. Taylor
96d26a77a1 Explosion: set block damage to zero on destruction 2018-04-16 14:30:54 +01:00
Dylan K. Taylor
554fe4d14d Updated dependencies, require 64-bit PHP in composer.json 2018-04-16 10:19:17 +01:00
Dylan K. Taylor
532269a484 Implemented block break XP drops 2018-04-15 19:03:18 +01:00
Dylan K. Taylor
1e2122d854 avoid crashing in forceShutdown() if properties wasn't initialized yet 2018-04-14 12:45:03 +01:00
Dylan K. Taylor
c276ef2b7f Updated dependency versions 1.7dev-937 api/3.0.0-ALPHA12 2018-04-13 20:09:18 +01:00
Dylan K. Taylor
5138bdc4bd Updated DevTools submodule 2018-04-13 17:38:51 +01:00
Dylan K. Taylor
a30a157d8c API bump to 3.0.0-ALPHA12
Yes, I am not happy about this either. new-versioning has issues, and there hasn't been enough development and testing on it.
I didn't want to delay release to cram in a half-baked new versioning system, and it's ended up delayed anyway and new-versioning is still half-baked.
we're overdue a new release, so here it is.
2018-04-13 13:31:15 +01:00
Dylan K. Taylor
e565cdeea4 Tile: remove unnecessary createAdditionalNBT() things
these things are filled in by the tiles' constructors anyway.
2018-04-13 11:50:04 +01:00
Dylan K. Taylor
556a465c05 Container tiles: remove unnecessary ListTag Items creation
the existence of this tag is checked for anyway.
2018-04-13 11:27:11 +01:00
Dylan K. Taylor
280f2b7259 always loose imports... 2018-04-13 11:25:52 +01:00
Dylan K. Taylor
933b0e8b41 Furnace: cleanup, stop abusing NBT, stop spamming packets 2018-04-13 11:22:47 +01:00
Dylan K. Taylor
58279d4cfe NetworkBinaryStream: fixed not decoding items with negative IDs correctly
negative IDs are used for new block-items.
2018-04-11 13:01:41 +01:00
Dylan K. Taylor
1e21066c1c Server: remove redundant == true from setConfigBool() 2018-04-10 12:22:21 +01:00
Dylan K. Taylor
76854da7ba Command: remove dead field 2018-04-10 12:11:27 +01:00
Dylan K. Taylor
46cbcb0c42 Fixed fire with no nearby flammable blocks burning for too long 2018-04-10 10:07:14 +01:00
Dylan K. Taylor
af9b0b019d Added BlockBurnEvent 2018-04-10 10:04:11 +01:00
Dylan K. Taylor
7db8845375 Fire has a 1/3 chance of aging on a random or scheduled tick 2018-04-10 09:59:54 +01:00
Dylan K. Taylor
f47f593555 Level: Removed fire hack from destroyBlockInternal()
this was causing unexpected behaviour particularly on burning trees, whereby fire would be unconditionally extinguished if the block below it was removed.
2018-04-10 09:59:40 +01:00
Dylan K. Taylor
691df5c11d FlintSteel: remove instanceof Solid check
This makes the behaviour match vanilla. This will now allow Fire block itself to handle deletion of itself when the area is not suitable (now that the logic is implemented in Fire for this).

This allows attempting to place in invalid conditions, which is as expected. This will produce the sound and flash as per vanilla, as the fire extinguishes itself.
2018-04-10 09:59:27 +01:00
Dylan K. Taylor
9a1d3aec6b Flammable blocks adjacent to fire now burn away
There are some strange bugs with blockupdating causing invisible client-side-only fires that need to be investigated.
2018-04-10 09:59:10 +01:00
Dylan K. Taylor
670a53ba3b Fire: fixed logic of extinguishing 2018-04-10 09:58:58 +01:00
Dylan K. Taylor
f22ad14c67 Block: added isFlammable() 2018-04-10 09:58:35 +01:00
Dylan K. Taylor
64540f36be Block: added burnsForever() 2018-04-10 09:58:21 +01:00
Dylan K. Taylor
e66b1953de Block: added flame encouragement and flammability properties 2018-04-10 09:58:08 +01:00
Dylan K. Taylor
aa6666872a BlockFactory: added a hack for weird air blocks with non-zero damage values
I don't know what causes this to occur, but they should never have non-zero damage values, so we discard the metadata.
2018-04-09 16:35:31 +01:00
Dylan K. Taylor
646455f6e8 fixed painting particles, removed DestroyParticle
it didn't last long because they changed how this works... yuk
2018-04-09 16:26:15 +01:00
Dylan K. Taylor
05a1e61e5b Painting: polyfill height and width 2018-04-09 16:20:46 +01:00
Dylan K. Taylor
5f52e00213 Fixed plugin loaders trying to load plugins they aren't able to load
closes #2125

This is an API break for things implementing the PluginLoader interface.
2018-04-09 15:54:20 +01:00
Dylan K. Taylor
476ac39988 update PHP version requirements in composer files 2018-04-09 15:50:55 +01:00
Dylan K. Taylor
5f1ae1059e Move min required PHP version to 7.2.0 2018-04-09 15:37:56 +01:00
Dylan K. Taylor
08d8adae5b fixup some ResourcePack TODOs 2018-04-07 13:09:44 +01:00
Dylan K. Taylor
8d988af7db EntityLink: added type constants 2018-04-07 11:35:36 +01:00