2222import com .viaversion .viabackwards .api .data .MappedLegacyBlockItem ;
2323import com .viaversion .viabackwards .api .data .BackwardsMappingDataLoader ;
2424import com .viaversion .viabackwards .protocol .protocol1_11_1to1_12 .data .BlockColors ;
25- import com .viaversion .viabackwards .utils .Block ;
2625import com .viaversion .viaversion .api .minecraft .BlockChangeRecord ;
2726import com .viaversion .viaversion .api .minecraft .chunks .Chunk ;
2827import com .viaversion .viaversion .api .minecraft .chunks .ChunkSection ;
5150import java .util .HashMap ;
5251import java .util .Map ;
5352import java .util .Optional ;
53+ import com .viaversion .viaversion .util .IdAndData ;
5454import org .checkerframework .checker .nullness .qual .Nullable ;
5555
5656public abstract class LegacyBlockItemRewriter <C extends ClientboundPacketType , S extends ServerboundPacketType ,
@@ -81,9 +81,9 @@ private void addMapping(String key, JsonObject object, Int2ObjectMap<MappedLegac
8181 // Include data
8282 short unmappedData = Short .parseShort (key .substring (dataSeparatorIndex + 1 ));
8383 unmappedId = Integer .parseInt (key .substring (0 , dataSeparatorIndex ));
84- unmappedId = Block . toRawId (unmappedId , unmappedData );
84+ unmappedId = IdAndData . toRawData (unmappedId , unmappedData );
8585 } else {
86- unmappedId = Block . rawById (Integer .parseInt (key ));
86+ unmappedId = IdAndData . toRawData (Integer .parseInt (key ));
8787 }
8888
8989 mappings .put (unmappedId , new MappedLegacyBlockItem (id , data , name , block ));
@@ -98,12 +98,12 @@ private void addMapping(String key, JsonObject object, Int2ObjectMap<MappedLegac
9898 // Special block color handling
9999 if (name .contains ("%color%" )) {
100100 for (int i = from ; i <= to ; i ++) {
101- mappings .put (Block . rawById (i ), new MappedLegacyBlockItem (id , data , name .replace ("%color%" , BlockColors .get (i - from )), block ));
101+ mappings .put (IdAndData . toRawData (i ), new MappedLegacyBlockItem (id , data , name .replace ("%color%" , BlockColors .get (i - from )), block ));
102102 }
103103 } else {
104104 MappedLegacyBlockItem mappedBlockItem = new MappedLegacyBlockItem (id , data , name , block );
105105 for (int i = from ; i <= to ; i ++) {
106- mappings .put (Block . rawById (i ), mappedBlockItem );
106+ mappings .put (IdAndData . toRawData (i ), mappedBlockItem );
107107 }
108108 }
109109 }
@@ -208,19 +208,19 @@ public PacketHandler getFallingBlockHandler() {
208208 if (type .isPresent () && type .get () == EntityTypes1_12 .ObjectType .FALLING_BLOCK ) {
209209 final int objectData = wrapper .get (Type .INT , 0 );
210210
211- final Block block = handleBlock (objectData & 4095 , objectData >> 12 & 15 );
211+ final IdAndData block = handleBlock (objectData & 4095 , objectData >> 12 & 15 );
212212 if (block == null ) return ;
213213
214214 wrapper .set (Type .INT , 0 , block .getId () | block .getData () << 12 );
215215 }
216216 };
217217 }
218218
219- public @ Nullable Block handleBlock (int blockId , int data ) {
219+ public @ Nullable IdAndData handleBlock (int blockId , int data ) {
220220 MappedLegacyBlockItem settings = getMappedBlockItem (blockId , data );
221221 if (settings == null || !settings .isBlock ()) return null ;
222222
223- Block block = settings .getBlock ();
223+ IdAndData block = settings .getBlock ();
224224 // For some blocks, the data can still be useful (:
225225 if (block .getData () == -1 ) {
226226 return block .withData (data );
@@ -229,13 +229,13 @@ public PacketHandler getFallingBlockHandler() {
229229 }
230230
231231 public int handleBlockId (final int rawId ) {
232- final int id = Block .getId (rawId );
233- final int data = Block .getData (rawId );
232+ final int id = IdAndData .getId (rawId );
233+ final int data = IdAndData .getData (rawId );
234234
235- final Block mappedBlock = handleBlock (id , data );
235+ final IdAndData mappedBlock = handleBlock (id , data );
236236 if (mappedBlock == null ) return rawId ;
237237
238- return Block . toRawId (mappedBlock .getId (), mappedBlock .getData ());
238+ return IdAndData . toRawData (mappedBlock .getId (), mappedBlock .getData ());
239239 }
240240
241241 public void handleChunk (Chunk chunk ) {
@@ -283,9 +283,9 @@ public void handleChunk(Chunk chunk) {
283283 int btype = block >> 4 ;
284284 int meta = block & 0xF ;
285285
286- Block b = handleBlock (btype , meta );
286+ IdAndData b = handleBlock (btype , meta );
287287 if (b != null ) {
288- palette .setIdByIndex (j , Block . toRawId (b .getId (), b .getData ()));
288+ palette .setIdByIndex (j , IdAndData . toRawData (b .getId (), b .getData ()));
289289 }
290290
291291 // We already know that is has a handler
@@ -336,13 +336,13 @@ protected CompoundTag getNamedTag(String text) {
336336 }
337337
338338 private @ Nullable MappedLegacyBlockItem getMappedBlockItem (int id , int data ) {
339- MappedLegacyBlockItem mapping = replacementData .get (Block . toRawId (id , data ));
340- return mapping != null || data == 0 ? mapping : replacementData .get (Block . rawById (id ));
339+ MappedLegacyBlockItem mapping = replacementData .get (IdAndData . toRawData (id , data ));
340+ return mapping != null || data == 0 ? mapping : replacementData .get (IdAndData . toRawData (id ));
341341 }
342342
343343 private @ Nullable MappedLegacyBlockItem getMappedBlockItem (int rawId ) {
344344 MappedLegacyBlockItem mapping = replacementData .get (rawId );
345- return mapping != null ? mapping : replacementData .get (Block . rawByData (rawId ));
345+ return mapping != null ? mapping : replacementData .get (IdAndData . removeData (rawId ));
346346 }
347347
348348 protected JsonObject readMappingsFile (final String name ) {
0 commit comments