@@ -100,7 +100,7 @@ public static void populate() {
100
100
for (Map .Entry <String , PaletteVersion > palette : PALETTE_VERSIONS .entrySet ()) {
101
101
stream = FileUtils .getResource (String .format ("bedrock/runtime_item_states.%s.json" , palette .getKey ()));
102
102
103
- TypeReference <List <PaletteItem >> paletteEntriesType = new TypeReference <List < PaletteItem >> () { };
103
+ TypeReference <List <PaletteItem >> paletteEntriesType = new TypeReference <> () {};
104
104
105
105
// Used to get the Bedrock namespaced ID (in instances where there are small differences)
106
106
Object2IntMap <String > bedrockIdentifierToId = new Object2IntOpenHashMap <>();
@@ -470,9 +470,17 @@ public static void populate() {
470
470
builder .putString ("name" , "geysermc:furnace_minecart" )
471
471
.putInt ("id" , furnaceMinecartId );
472
472
473
+ NbtMapBuilder itemProperties = NbtMap .builder ();
474
+
473
475
NbtMapBuilder componentBuilder = NbtMap .builder ();
474
476
// Conveniently, as of 1.16.200, the furnace minecart has a texture AND translation string already.
475
- componentBuilder .putCompound ("minecraft:icon" , NbtMap .builder ().putString ("texture" , "minecart_furnace" ).build ());
477
+ // 1.17.30 moves the icon to the item properties section
478
+ (palette .getValue ().getProtocolVersion () >= Bedrock_v465 .V465_CODEC .getProtocolVersion () ?
479
+ itemProperties : componentBuilder ).putCompound ("minecraft:icon" , NbtMap .builder ()
480
+ .putString ("texture" , "minecart_furnace" )
481
+ .putString ("frame" , "0.000000" )
482
+ .putInt ("frame_version" , 1 )
483
+ .putString ("legacy_id" , "" ).build ());
476
484
componentBuilder .putCompound ("minecraft:display_name" , NbtMap .builder ().putString ("value" , "item.minecartFurnace.name" ).build ());
477
485
478
486
// Indicate that the arm animation should play on rails
@@ -483,7 +491,6 @@ public static void populate() {
483
491
.putList ("use_on" , NbtType .COMPOUND , useOnTag )
484
492
.build ());
485
493
486
- NbtMapBuilder itemProperties = NbtMap .builder ();
487
494
// We always want to allow offhand usage when we can - matches Java Edition
488
495
itemProperties .putBoolean ("allow_off_hand" , true );
489
496
itemProperties .putBoolean ("hand_equipped" , false );
0 commit comments