310 Commits

Author SHA1 Message Date
Dylan K. Taylor
f88ae93897
BC break: Replaced webmozart/path-util with symfony/filesystem, closes #5332 2022-10-13 16:43:36 +01:00
Dylan K. Taylor
1609b11c8e
Make blockstate (de)serializer names a bit less verbose 2022-09-24 13:43:00 +01:00
Dylan K. Taylor
f80ffd8de0
Merge branch 'next-minor' into next-major 2022-09-15 13:59:21 +01:00
Dylan K. Taylor
3d03bb1301
Fix CS 2022-09-15 12:01:26 +01:00
Dylan K. Taylor
c063198b89
Fixed incorrect array key type in BrewingStandTest 2022-09-02 20:01:52 +01:00
Dylan K. Taylor
d4f96a155a
Support axis rotation of Muddy Mangrove Roots (implemented in 1.19.20) 2022-08-14 18:53:01 +01:00
Dylan K. Taylor
6ba3b39541
Added tests for BlockTypeIds and ItemTypeIds 2022-07-24 21:57:51 +01:00
Dylan K. Taylor
6a2315a63d
Accept BlockTypeInfo in Block constructor, instead of BlockBreakInfo
this will allow more stuff to be passed via the constructor without having to change dozens of classes to do it.
2022-07-23 20:42:54 +01:00
Dylan K. Taylor
102406ee79
Added froglights 2022-07-23 17:40:38 +01:00
Dylan K. Taylor
4419161a49
Updated consistency check 2022-07-23 17:39:26 +01:00
Dylan K. Taylor
b13f333b2e
Added mud and packed mud 2022-07-23 16:40:46 +01:00
Dylan K. Taylor
a7313ed9d9
Added rooted dirt 2022-07-23 16:12:17 +01:00
Dylan K. Taylor
67682cbf27
Added chorus plant and flower 2022-07-20 20:19:36 +01:00
Dylan T
c1acf44337
Implement cauldrons (#5163)
the following things are currently not implemented:

- particle/sound effects when an entity extinguishes itself
- particle/sound effects when mixing different stuff in a cauldron
- powder snow cauldron

both of these things are contingent on #5169, but for the time being, the PR is functionally complete and I want to move on to something else without being stalled by the particle+sound problem (which I haven't yet decided how to solve).
2022-07-20 16:12:58 +01:00
Dylan K. Taylor
fa201b081c
Added spore blossoms
I got tired of the flood of warning messages every time someone joined the dev server...
2022-07-19 20:28:12 +01:00
Dylan K. Taylor
21ed5a450f
Updated BlockFactory consistency check 2022-07-14 20:42:16 +01:00
Dylan K. Taylor
323d31005f
Added glowing item frames 2022-07-14 16:24:20 +01:00
Dylan K. Taylor
eafc23c756
Added candles and cakes with candles 2022-07-13 23:54:41 +01:00
Dylan K. Taylor
260e54e4b1
Skeleton for copper blocks, stairs and slabs 2022-07-10 00:18:35 +01:00
Dylan K. Taylor
5e70ae2066
Added lightning rods 2022-07-09 20:18:22 +01:00
Dylan K. Taylor
ad7528e3f3
Added warped wart blocks, gilded blackstone and crying obsidian 2022-07-09 20:00:10 +01:00
Dylan K. Taylor
ccb3c3cb05
BlockStateData: use array<Tag> instead of CompoundTag to store state properties
this reduces the footprint of RuntimeBlockMapping by a further 1 MB, as well as simplifying various parts of the code, and solidifying the immutability guarantee of BlockStateData.
2022-07-09 16:03:51 +01:00
Dylan K. Taylor
4d6fb2b925
Removed ItemFactory 2022-07-06 23:57:29 +01:00
Dylan K. Taylor
b0c76f4db5
Fixed botched unit tests 2022-07-06 23:28:08 +01:00
Dylan K. Taylor
8886a023f1
Reduce the size of block_factory_consistency_check.json by improving the storage format
this reduces the size by 65%, but more importantly, doesn't cause several pages of flooding in git diff.
2022-07-06 23:20:13 +01:00
Dylan K. Taylor
ae70c63798
Added tinted glass 2022-07-06 23:01:17 +01:00
Dylan K. Taylor
fe93609c8d
Added mud bricks and related blocks 2022-07-06 00:02:51 +01:00
Dylan K. Taylor
5536672e4b
Updated consistency check 2022-07-05 20:42:53 +01:00
Dylan K. Taylor
68cbe46600
Exterminate legacy item IDs 2022-07-05 15:12:55 +01:00
Dylan K. Taylor
4e71cc7d79
Remove ItemFactory::get(), use ItemFactory::fromTypeId() for VanillaItems
soon we'll invert the dependency and set up all this stuff in VanillaItems directly, rendering ItemFactory (mostly) unnecessary.
2022-07-05 14:26:02 +01:00
Dylan K. Taylor
0a23e91329
Rename BlockFactory::fromFullBlock() -> BlockFactory::fromStateId() 2022-07-05 13:46:19 +01:00
Dylan K. Taylor
d9544b5d0e
Added soul fire 2022-07-04 22:32:35 +01:00
Dylan K. Taylor
2c33d8429e
tests: remove unnecessary Block::getName() override 2022-07-03 20:08:56 +01:00
Dylan K. Taylor
386c385a08
Updated BlockFactory consistency check 2022-07-03 19:07:45 +01:00
Dylan K. Taylor
33eef99d1f
Added axis support for all-sided logs 2022-07-03 17:27:25 +01:00
Dylan K. Taylor
e302e5a85f
Implemented chiseled deepslate, chiseled nether brick and cracked nether brick 2022-07-03 03:04:06 +01:00
Dylan K. Taylor
4acf7aadbd
Added quartz bricks 2022-07-03 02:11:50 +01:00
Dylan K. Taylor
a3016abf53
Added polished deepslate block/slab/stair/wall 2022-07-03 02:00:43 +01:00
Dylan K. Taylor
89632f3514
Added deepslate, cobbled/tiles/bricks walls/slabs/stairs/cubes 2022-07-03 01:43:27 +01:00
Dylan K. Taylor
017ebb9b47
Updated consistency check 2022-07-03 00:02:03 +01:00
Dylan K. Taylor
2a0fade893
Implemented Light blocks 2022-07-02 22:39:11 +01:00
Dylan K. Taylor
c84033213f
Updated BlockFactory consistency check 2022-07-02 21:55:35 +01:00
Dylan K. Taylor
bcdbb09c2c
Updated BlockFactory consistency check 2022-07-02 20:19:58 +01:00
Dylan K. Taylor
248eacd042
GlazedTerracotta: make colour dynamic, like all other coloured blocks
made possible by stripping out legacy mess
2022-07-02 18:30:23 +01:00
Dylan K. Taylor
b125d4d25f
Strip all remaining legacy item ID/meta stuff from blocks
the doors are now finally open, we can:
- make all the wood types dynamic
- fix glazed terracotta
- add all the new blocks

LET'S GOOOOOOOOOOOO
2022-07-02 17:48:11 +01:00
Dylan K. Taylor
4bd087fc83
Fix CS 2022-06-30 19:09:49 +01:00
Dylan K. Taylor
2a0b500010
Block: Separate encoding of type and state data
the terminology of this needs improvement, but...

the basic concept here is that 'type' data will persist on an itemstack, while 'state' data will not.

Type data consists of things like:
- Colour
- Coral type
- Wet/dry (sponges)
- Live/dead (coral)
- Wood type

State data consists of things like:
- Facing
- Axis
- Powered/unpowered
- Open/closed

In the past, with the old system, this information was separated by way of getStateBitmask(). This solution was fraught with problems, but achieved the basic goal: removing unwanted block properties from items.
2022-06-30 18:08:34 +01:00
Dylan K. Taylor
f8547ad57c
LegacyStringToItemParserTest: do not rely on the presence of legacy ID and meta in the API 2022-06-30 16:39:50 +01:00
Dylan K. Taylor
83c46a4b54
LegacyStringToItemParser: remove bogus test
this test is obsolete since ea3d5ac5630f57b9cec46771001ab83bb0ddec25, since durable items no longer use meta to represent damage.
2022-06-29 15:26:56 +01:00
Dylan K. Taylor
bc5a600d59
Added item stack serialize/deserialize methods 2022-06-26 17:02:55 +01:00