Commit Graph

134 Commits

Author SHA1 Message Date
Dylan K. Taylor
e8fe3d0664 Replace some ItemFactory blockitem fetches with VanillaBlocks::THING()->asItem() 2019-07-09 18:30:02 +01:00
Dylan K. Taylor
08e1f6405c implemented Carved Pumpkin 2019-07-09 17:56:09 +01:00
Dylan K. Taylor
fe850a184c deal with fern mapping properly 2019-07-05 15:14:03 +01:00
Dylan K. Taylor
134a87ec7d BlockFactory: regenerate TODOs 2019-07-03 18:26:01 +01:00
Dylan K. Taylor
ee885bb725 shorten BlockToolType constants 2019-07-03 17:57:11 +01:00
Dylan K. Taylor
80b29250c8 added all the element blocks 2019-07-03 16:17:17 +01:00
Dylan K. Taylor
5e88fda824 added BrewingStand tile (implementation incomplete)
since we already have a partial implementation of brewing stand, we should also have the corresponding tile so that PM doesn't create any more busted blocks.
2019-06-07 19:29:26 +01:00
Dylan K. Taylor
3bc8244673 proper remapping for the old all-sided-log bug block 2019-06-07 19:25:44 +01:00
Dylan K. Taylor
659cad0eff BlockFactory: added a hacky method to allow block state remapping
we need this for fixing old data in some cases
2019-06-07 18:31:37 +01:00
Dylan K. Taylor
f30cee15ca added Dried Kelp block 2019-06-07 18:03:17 +01:00
Dylan K. Taylor
ad79e6cd8e partial implementation of hopper (just enough to load/save all data) 2019-05-31 19:32:19 +01:00
Dylan K. Taylor
790c2cd4b7 added missing Monster Spawner tile 2019-05-30 19:26:16 +01:00
Dylan K. Taylor
1bf5c74053 added missing DaylightSensor tile 2019-05-30 19:00:38 +01:00
Dylan K. Taylor
f18da8d879 Added missing tile for Note Block
this doesn't come with a full impl because that requires some further changes like adding materials, which is out of the scope of this commit. This is here to prevent additional data loss in imported worlds.
2019-05-30 18:53:20 +01:00
Dylan K. Taylor
d23dbc69f1 BlockFactory: Alias some classes to improve readability 2019-05-25 19:59:24 +01:00
Dylan K. Taylor
a44d47fd3c BlockFactory: Consistently use aliases to refer to tiles 2019-05-25 19:25:42 +01:00
Dylan K. Taylor
b329cac3d2 Move pocketmine\tile\* to pocketmine\block\tile\* 2019-05-25 19:23:43 +01:00
Dylan K. Taylor
c29523baf4 added a bunch of new blocks 2019-05-24 19:59:03 +01:00
Dylan K. Taylor
54216c2fee Block: Blow away a bunch of useless classes 2019-05-24 19:38:43 +01:00
Dylan K. Taylor
dd914e0752 Block: move all legacy metadata constants into a dedicated class
this makes it easier to see what is using metadata (and makes it easier to get rid of later).
2019-05-16 16:55:44 +01:00
Dylan K. Taylor
1898db840d BlockFactory: more collapsible region things 2019-05-16 14:36:02 +01:00
Dylan K. Taylor
ff2600a0d0 Regenerated TODOs for BlockFactory and ItemFactory
also added //region and //endregion for IDE collapsibility
2019-05-16 14:20:51 +01:00
Dylan K. Taylor
5024de38b8 added more types of stone slab 2019-05-15 18:15:25 +01:00
Dylan K. Taylor
fd413b512e Remove useless Dandelion class
this class is line-for-line identical to the Flower class.
2019-05-12 18:42:49 +01:00
Dylan K. Taylor
9e72bc91a2 Separate block break-info to a separate dynamic unit 2019-05-10 16:24:59 +01:00
Dylan K. Taylor
3be5de4570 Separate WoodenTrapdoor from Trapdoor, fixed iron trapdoors being valid furnace fuel, closes #2914 for bleeding-edge 2019-05-09 19:30:18 +01:00
Dylan T
3cd6e12e71 Renaming "Level" -> "World" (#2907)
This has been a pain point for a long time due to the misleading nature of the name "level". It's also confusing when trying to do things like getting the XP level of the player or such, and also does not translate well to other languages.

This transition was already executed on the UI some time ago (language strings) and now it's time for the same change to occur on the API.

This will burn a lot of plugins, but they'll acclimatize. Despite the scary size of this PR, there isn't actually so many changes to make. Most of this came from renaming `Position->getLevel()` to `Position->getWorld()`, or cosmetic changes like changing variable names or doc comments.
2019-05-07 14:47:28 +01:00
Dylan K. Taylor
80a6fc5dd1 BlockFactory: remove deprecated functions 2019-04-02 19:15:29 +01:00
Dylan K. Taylor
f638845ef6 Merge branch '3.7' 2019-03-29 15:16:27 +00:00
Dylan K. Taylor
8e9f787d33 Implement runtimeID table randomization, closes #2841 2019-03-29 14:35:06 +00:00
Dylan K. Taylor
d9134f28e4 Rename CobblestoneWall -> Wall 2019-03-23 19:50:07 +00:00
Dylan K. Taylor
2a3e6dcf00 Rename BlockIds -> BlockLegacyIds 2019-03-23 19:46:31 +00:00
Dylan K. Taylor
79ef8e0803 Replace all legacy blockID references with BlockIds:: 2019-03-23 19:44:33 +00:00
Dylan K. Taylor
f84d7ad70d sync block TODOs 2019-03-23 19:21:11 +00:00
Dylan K. Taylor
6efdac63d0 added new Wood block 2019-03-23 19:18:25 +00:00
Dylan K. Taylor
06a37cc462 Fixed "wood" collision
why the fuck Mojang...
2019-03-23 19:08:17 +00:00
Dylan K. Taylor
1e096a408a Cram Nether Portal
again, this is here for the state handling and the implementation is unfinished.
2019-03-23 18:38:14 +00:00
Dylan K. Taylor
74e134136d Make Infested Stone blocks known
this is not remotely a complete implementation, it's just here to make PM aware of these states so that world conversion can be handled correctly. A full implementation will come later.

Any blocks added in this fashion should be marked with a //TODO so future maintainers can find which blocks need work.
2019-03-23 18:28:29 +00:00
Dylan K. Taylor
a8fa8572e1 partial sea pickle implementation 2019-03-23 18:11:27 +00:00
Dylan K. Taylor
905cb7544a hack in different wood sign types 2019-03-23 15:44:28 +00:00
Dylan K. Taylor
2966e87aae BlockFactory: Regenerate TODO list 2019-03-21 14:33:56 +00:00
Dylan K. Taylor
7f4b76aa86 Implemented blue ice 2019-03-12 19:38:03 +00:00
Dylan K. Taylor
48427290c9 Regenerated BlockFactory TODOs 2019-03-10 19:53:55 +00:00
Dylan K. Taylor
437750785f Implemented barrier block 2019-03-10 19:53:55 +00:00
Dylan K. Taylor
c2a069afd3 Implemented a bunch of new wood blocks 2019-03-10 19:53:24 +00:00
Dylan T
8f1bc5d497 Flatten wall_banner and wall_sign into single blocks (#2798)
This comes with some problems, but the problems are more bearable than the previous code.
2019-03-08 16:37:26 +00:00
Dylan K. Taylor
943906cc6b Partial comparator implementation
this supports placement, toggling compare/subtract mode, simple stuff. No redstone functionality yet.
This is needed for blockstate mapping in blockfactory.
2019-02-28 19:26:47 +00:00
Dylan K. Taylor
9ad0ea85c7 Rename two misleadingly-named functions 2019-02-27 12:59:12 +00:00
Dylan K. Taylor
53af7f5da8 Implemented dragon egg 2019-02-26 15:35:37 +00:00
Dylan K. Taylor
2d51622b12 Implemented frosted ice 2019-02-26 15:34:48 +00:00