From ffb88e96e26586ebd956daa0b1ae6004e83be089 Mon Sep 17 00:00:00 2001 From: FlorianMichael <60033407+FlorianMichael@users.noreply.github.com> Date: Tue, 16 Apr 2024 21:07:33 +0200 Subject: [PATCH] Use VVs IdAndData --- .../vialegacy/api/model/IdAndData.java | 67 ------------------- .../api/remapper/AbstractBlockRemapper.java | 12 ++-- .../api/remapper/AbstractChunkTracker.java | 34 +++++----- .../Protocolb1_0_1_1_1toa1_2_3_5_1_2_6.java | 22 +++--- .../data/AlphaItems.java | 24 +++---- .../storage/AlphaInventoryTracker.java | 8 +-- .../task/PlayerAirTimeUpdateTask.java | 4 +- .../Protocolb1_2_0_2tob1_1_2.java | 6 +- .../rewriter/BlockDataRewriter.java | 2 +- .../Protocolb1_3_0_1tob1_2_0_2.java | 2 +- .../data/BlockHardnessList.java | 4 +- .../Protocolb1_6_0_6tob1_5_0_2.java | 16 ++--- .../Protocolb1_8_0_1tob1_7_0_3.java | 2 +- .../Protocola1_0_15toc0_30.java | 10 +-- .../data/ClassicBlocks.java | 2 +- .../storage/ClassicBlockRemapper.java | 2 +- .../storage/ClassicLevelStorage.java | 2 +- .../Protocolc0_30toc0_30cpe.java | 4 +- .../data/ExtendedClassicBlocks.java | 2 +- .../Protocol1_2_1_3to1_1.java | 4 +- .../model/PendingBlockEntry.java | 2 +- .../storage/PendingBlocksTracker.java | 6 +- .../types/BlockChangeRecordArrayType.java | 4 +- .../types/ChunkType1_1.java | 4 +- .../Protocol1_3_1_2to1_2_4_5.java | 10 +-- .../Protocol1_7_2_5to1_6_4.java | 18 ++--- .../storage/ChunkTracker.java | 30 ++++----- .../Protocol1_8to1_7_6_10.java | 18 ++--- .../metadata/MetadataRewriter.java | 4 +- .../storage/ChunkTracker.java | 10 +-- .../types/ChunkType1_7_6.java | 4 +- 31 files changed, 136 insertions(+), 203 deletions(-) delete mode 100644 src/main/java/net/raphimc/vialegacy/api/model/IdAndData.java diff --git a/src/main/java/net/raphimc/vialegacy/api/model/IdAndData.java b/src/main/java/net/raphimc/vialegacy/api/model/IdAndData.java deleted file mode 100644 index 352435d..0000000 --- a/src/main/java/net/raphimc/vialegacy/api/model/IdAndData.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * This file is part of ViaLegacy - https://github.com/RaphiMC/ViaLegacy - * Copyright (C) 2020-2024 RK_01/RaphiMC and contributors - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package net.raphimc.vialegacy.api.model; - -import java.util.Objects; - -public class IdAndData { - - public int id; - public int data; - - public IdAndData(final int id, final int data) { - if (data < 0 || data > 15) throw new IllegalArgumentException("Block data out of bounds (id:" + id + " data:" + data + ")"); - this.id = id; - this.data = data; - } - - public static IdAndData fromCompressedData(final int idAndData) { - return new IdAndData(idAndData >> 4, idAndData & 15); - } - - public static int toCompressedData(final int id, final int data) { - return id << 4 | data & 15; - } - - public int toCompressedData() { - return toCompressedData(this.id, this.data); - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - IdAndData idAndData = (IdAndData) o; - return id == idAndData.id && - data == idAndData.data; - } - - @Override - public int hashCode() { - return Objects.hash(id, data); - } - - @Override - public String toString() { - return "IdAndData{" + - "id=" + id + - ", data=" + data + - '}'; - } - -} diff --git a/src/main/java/net/raphimc/vialegacy/api/remapper/AbstractBlockRemapper.java b/src/main/java/net/raphimc/vialegacy/api/remapper/AbstractBlockRemapper.java index 223e2b2..6451190 100644 --- a/src/main/java/net/raphimc/vialegacy/api/remapper/AbstractBlockRemapper.java +++ b/src/main/java/net/raphimc/vialegacy/api/remapper/AbstractBlockRemapper.java @@ -24,7 +24,7 @@ import com.viaversion.viaversion.api.minecraft.chunks.DataPalette; import com.viaversion.viaversion.api.minecraft.chunks.PaletteType; import com.viaversion.viaversion.libs.fastutil.ints.Int2IntMap; import com.viaversion.viaversion.libs.fastutil.ints.Int2IntOpenHashMap; -import net.raphimc.vialegacy.api.model.IdAndData; +import com.viaversion.viaversion.util.IdAndData; public abstract class AbstractBlockRemapper { @@ -35,7 +35,7 @@ public abstract class AbstractBlockRemapper { } protected void registerReplacement(final IdAndData from, final IdAndData to) { - this.REPLACEMENTS.put(from.toCompressedData(), to.toCompressedData()); + this.REPLACEMENTS.put(from.toRawData(), to.toRawData()); } public void remapChunk(final Chunk chunk) { @@ -60,10 +60,10 @@ public abstract class AbstractBlockRemapper { } public void remapBlock(final IdAndData block) { - if (this.REPLACEMENTS.containsKey(block.toCompressedData())) { - final int replacement = this.REPLACEMENTS.get(block.toCompressedData()); - block.id = replacement >> 4; - block.data = replacement & 15; + if (this.REPLACEMENTS.containsKey(block.toRawData())) { + final int replacement = this.REPLACEMENTS.get(block.toRawData()); + block.setId(replacement >> 4); + block.setData(replacement & 15); } } diff --git a/src/main/java/net/raphimc/vialegacy/api/remapper/AbstractChunkTracker.java b/src/main/java/net/raphimc/vialegacy/api/remapper/AbstractChunkTracker.java index a6956d2..f3f8cbe 100644 --- a/src/main/java/net/raphimc/vialegacy/api/remapper/AbstractChunkTracker.java +++ b/src/main/java/net/raphimc/vialegacy/api/remapper/AbstractChunkTracker.java @@ -24,8 +24,8 @@ import com.viaversion.viaversion.libs.fastutil.ints.Int2IntMap; import com.viaversion.viaversion.libs.fastutil.ints.Int2IntOpenHashMap; import com.viaversion.viaversion.libs.fastutil.ints.IntOpenHashSet; import com.viaversion.viaversion.libs.fastutil.ints.IntSet; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.api.model.ChunkCoord; -import net.raphimc.vialegacy.api.model.IdAndData; import java.util.ArrayList; import java.util.HashMap; @@ -107,9 +107,9 @@ public abstract class AbstractChunkTracker implements StorableObject { for (int z = 0; z < 16; z++) { final int flatBlock = palette.idAt(x, y, z); if (this.trackAll || this.toTrack.contains(flatBlock >> 4)) { - final IdAndData block = IdAndData.fromCompressedData(flatBlock); + final IdAndData block = IdAndData.fromRawData(flatBlock); this.remapBlock(block, x + (chunk.getX() << 4), y + (i * 16), z + (chunk.getZ() << 4)); - final int newFlatBlock = block.toCompressedData(); + final int newFlatBlock = block.toRawData(); if (newFlatBlock != flatBlock) { palette.setIdAt(x, y, z, newFlatBlock); } @@ -130,34 +130,34 @@ public abstract class AbstractChunkTracker implements StorableObject { if (chunk != null && y >= 0 && y >> 4 < chunk.getSections().length) { ChunkSection section = chunk.getSections()[y >> 4]; - if (this.trackAll || this.toTrack.contains(block.id)) { + if (this.trackAll || this.toTrack.contains(block.getId())) { if (section == null) { section = chunk.getSections()[y >> 4] = new ChunkSectionImpl(false); section.palette(PaletteType.BLOCKS).addId(0); } - section.palette(PaletteType.BLOCKS).setIdAt(x & 15, y & 15, z & 15, block.toCompressedData()); + section.palette(PaletteType.BLOCKS).setIdAt(x & 15, y & 15, z & 15, block.toRawData()); } else if (section != null) { section.palette(PaletteType.BLOCKS).setIdAt(x & 15, y & 15, z & 15, 0); } } - if (this.replacements.containsKey(block.toCompressedData())) { - final int newFlatBlock = this.replacements.get(block.toCompressedData()); - block.id = newFlatBlock >> 4; - block.data = newFlatBlock & 15; + if (this.replacements.containsKey(block.toRawData())) { + final int newFlatBlock = this.replacements.get(block.toRawData()); + block.setId(newFlatBlock >> 4); + block.setData(newFlatBlock & 15); } - if (this.trackAll || this.toTrack.contains(block.id)) { + if (this.trackAll || this.toTrack.contains(block.getId())) { this.remapBlock(block, x, y, z); } } public void remapBlockParticle(final IdAndData block) { - if (this.replacements.containsKey(block.toCompressedData())) { - final int newFlatBlock = this.replacements.get(block.toCompressedData()); - block.id = newFlatBlock >> 4; - block.data = newFlatBlock & 15; + if (this.replacements.containsKey(block.toRawData())) { + final int newFlatBlock = this.replacements.get(block.toRawData()); + block.setId(newFlatBlock >> 4); + block.setData(newFlatBlock & 15); } - if (this.trackAll || this.toTrack.contains(block.id)) { + if (this.trackAll || this.toTrack.contains(block.getId())) { this.remapBlock(block, 0, -16, 0); } } @@ -190,14 +190,14 @@ public abstract class AbstractChunkTracker implements StorableObject { if (y < 0 || y >> 4 > chunk.getSections().length - 1) return null; final ChunkSection section = chunk.getSections()[y >> 4]; if (section != null) { - return IdAndData.fromCompressedData(section.palette(PaletteType.BLOCKS).idAt(x & 15, y & 15, z & 15)); + return IdAndData.fromRawData(section.palette(PaletteType.BLOCKS).idAt(x & 15, y & 15, z & 15)); } } return null; } protected void registerReplacement(final IdAndData from, final IdAndData to) { - this.replacements.put(from.toCompressedData(), to.toCompressedData()); + this.replacements.put(from.toRawData(), to.toRawData()); } protected void remapBlock(final IdAndData block, final int x, final int y, final int z) { diff --git a/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/Protocolb1_0_1_1_1toa1_2_3_5_1_2_6.java b/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/Protocolb1_0_1_1_1toa1_2_3_5_1_2_6.java index 93949ea..92ab911 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/Protocolb1_0_1_1_1toa1_2_3_5_1_2_6.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/Protocolb1_0_1_1_1toa1_2_3_5_1_2_6.java @@ -27,10 +27,10 @@ import com.viaversion.viaversion.api.protocol.packet.PacketWrapper; import com.viaversion.viaversion.api.protocol.remapper.PacketHandlers; import com.viaversion.viaversion.api.type.Type; import com.viaversion.viaversion.libs.opennbt.tag.builtin.*; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.ViaLegacy; import net.raphimc.vialegacy.api.data.BlockList1_6; import net.raphimc.vialegacy.api.data.ItemList1_6; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.api.protocol.StatelessProtocol; import net.raphimc.vialegacy.api.splitter.PreNettySplitter; import net.raphimc.vialegacy.protocols.alpha.protocolb1_0_1_1_1toa1_2_3_5_1_2_6.data.AlphaItems; @@ -149,7 +149,7 @@ public class Protocolb1_0_1_1_1toa1_2_3_5_1_2_6 extends StatelessProtocolget("id").getValue() : ""; - if (block.id == BlockList1_6.signPost.blockID || block.id == BlockList1_6.signWall.blockID || blockName.equals("Sign")) { + if (block.getId() == BlockList1_6.signPost.blockID || block.getId() == BlockList1_6.signWall.blockID || blockName.equals("Sign")) { final PacketWrapper updateSign = PacketWrapper.create(ClientboundPacketsb1_1.UPDATE_SIGN, wrapper.user()); updateSign.write(Types1_7_6.POSITION_SHORT, pos); // position updateSign.write(Typesb1_7_0_3.STRING, tag.get("Text1").getValue()); // line 1 @@ -157,7 +157,7 @@ public class Protocolb1_0_1_1_1toa1_2_3_5_1_2_6 extends StatelessProtocolget("Text3").getValue()); // line 3 updateSign.write(Typesb1_7_0_3.STRING, tag.get("Text4").getValue()); // line 4 updateSign.send(Protocolb1_0_1_1_1toa1_2_3_5_1_2_6.class); - } else if (block.id == BlockList1_6.mobSpawner.blockID || blockName.equals("MobSpawner")) { + } else if (block.getId() == BlockList1_6.mobSpawner.blockID || blockName.equals("MobSpawner")) { if (wrapper.user().getProtocolInfo().getPipeline().contains(Protocol1_2_1_3to1_1.class)) { final PacketWrapper spawnerData = PacketWrapper.create(ClientboundPackets1_2_1.BLOCK_ENTITY_DATA, wrapper.user()); spawnerData.write(Types1_7_6.POSITION_SHORT, pos); // position @@ -167,12 +167,12 @@ public class Protocolb1_0_1_1_1toa1_2_3_5_1_2_6 extends StatelessProtocol { diff --git a/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/data/AlphaItems.java b/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/data/AlphaItems.java index 4f68d39..0e5093d 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/data/AlphaItems.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/data/AlphaItems.java @@ -19,8 +19,8 @@ package net.raphimc.vialegacy.protocols.alpha.protocolb1_0_1_1_1toa1_2_3_5_1_2_6 import com.viaversion.viaversion.api.minecraft.item.Item; import com.viaversion.viaversion.libs.fastutil.ints.*; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.api.data.BlockList1_6; -import net.raphimc.vialegacy.api.model.IdAndData; import java.util.function.BiConsumer; import java.util.function.Consumer; @@ -312,7 +312,7 @@ public class AlphaItems { } }); PLACE_ACTION.put(290, (i, d) -> { - if (d.value().id == BlockList1_6.grass.blockID || d.value().id == BlockList1_6.dirt.blockID) { + if (d.value().getId() == BlockList1_6.grass.blockID || d.value().getId() == BlockList1_6.dirt.blockID) { i.setData((short) (i.data() + 1)); if (i.data() > 32) { i.setAmount(i.amount() - 1); @@ -320,7 +320,7 @@ public class AlphaItems { } }); PLACE_ACTION.put(291, (i, d) -> { - if (d.value().id == BlockList1_6.grass.blockID || d.value().id == BlockList1_6.dirt.blockID) { + if (d.value().getId() == BlockList1_6.grass.blockID || d.value().getId() == BlockList1_6.dirt.blockID) { i.setData((short) (i.data() + 1)); if (i.data() > 64) { i.setAmount(i.amount() - 1); @@ -328,7 +328,7 @@ public class AlphaItems { } }); PLACE_ACTION.put(292, (i, d) -> { - if (d.value().id == BlockList1_6.grass.blockID || d.value().id == BlockList1_6.dirt.blockID) { + if (d.value().getId() == BlockList1_6.grass.blockID || d.value().getId() == BlockList1_6.dirt.blockID) { i.setData((short) (i.data() + 1)); if (i.data() > 128) { i.setAmount(i.amount() - 1); @@ -336,7 +336,7 @@ public class AlphaItems { } }); PLACE_ACTION.put(293, (i, d) -> { - if (d.value().id == BlockList1_6.grass.blockID || d.value().id == BlockList1_6.dirt.blockID) { + if (d.value().getId() == BlockList1_6.grass.blockID || d.value().getId() == BlockList1_6.dirt.blockID) { i.setData((short) (i.data() + 1)); if (i.data() > 256) { i.setAmount(i.amount() - 1); @@ -344,7 +344,7 @@ public class AlphaItems { } }); PLACE_ACTION.put(294, (i, d) -> { - if (d.value().id == BlockList1_6.grass.blockID || d.value().id == BlockList1_6.dirt.blockID) { + if (d.value().getId() == BlockList1_6.grass.blockID || d.value().getId() == BlockList1_6.dirt.blockID) { i.setData((short) (i.data() + 1)); if (i.data() > 64) { i.setAmount(i.amount() - 1); @@ -352,7 +352,7 @@ public class AlphaItems { } }); PLACE_ACTION.put(295, (i, d) -> { - if (d.keyInt() == 1 && d.value().id == BlockList1_6.tilledField.blockID) { + if (d.keyInt() == 1 && d.value().getId() == BlockList1_6.tilledField.blockID) { i.setAmount(i.amount() - 1); } }); @@ -363,7 +363,7 @@ public class AlphaItems { if (d.keyInt() == 1) i.setAmount(i.amount() - 1); }); PLACE_ACTION.put(328, (i, d) -> { - if (d.value().id == BlockList1_6.rail.blockID) { + if (d.value().getId() == BlockList1_6.rail.blockID) { i.setAmount(i.amount() - 1); } }); @@ -371,22 +371,22 @@ public class AlphaItems { if (d.keyInt() == 1) i.setAmount(i.amount() - 1); }); PLACE_ACTION.put(342, (i, d) -> { - if (d.value().id == BlockList1_6.rail.blockID) { + if (d.value().getId() == BlockList1_6.rail.blockID) { i.setAmount(i.amount() - 1); } }); PLACE_ACTION.put(343, (i, d) -> { - if (d.value().id == BlockList1_6.rail.blockID) { + if (d.value().getId() == BlockList1_6.rail.blockID) { i.setAmount(i.amount() - 1); } }); PLACE_ACTION.put(2256, (i, d) -> { - if (d.value().id == BlockList1_6.jukebox.blockID && d.value().data == 0) { + if (d.value().getId() == BlockList1_6.jukebox.blockID && d.value().getData() == 0) { i.setAmount(i.amount() - 1); } }); PLACE_ACTION.put(2257, (i, d) -> { - if (d.value().id == BlockList1_6.jukebox.blockID && d.value().data == 0) { + if (d.value().getId() == BlockList1_6.jukebox.blockID && d.value().getData() == 0) { i.setAmount(i.amount() - 1); } }); diff --git a/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/storage/AlphaInventoryTracker.java b/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/storage/AlphaInventoryTracker.java index ff2080d..52ef44b 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/storage/AlphaInventoryTracker.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/alpha/protocolb1_0_1_1_1toa1_2_3_5_1_2_6/storage/AlphaInventoryTracker.java @@ -24,10 +24,10 @@ import com.viaversion.viaversion.api.minecraft.item.DataItem; import com.viaversion.viaversion.api.minecraft.item.Item; import com.viaversion.viaversion.api.protocol.packet.PacketWrapper; import com.viaversion.viaversion.api.type.Type; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.api.LegacyProtocolVersion; import net.raphimc.vialegacy.api.data.BlockList1_6; import net.raphimc.vialegacy.api.data.ItemList1_6; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.api.util.BlockFaceUtil; import net.raphimc.vialegacy.protocols.alpha.protocolb1_0_1_1_1toa1_2_3_5_1_2_6.Protocolb1_0_1_1_1toa1_2_3_5_1_2_6; import net.raphimc.vialegacy.protocols.alpha.protocolb1_0_1_1_1toa1_2_3_5_1_2_6.data.AlphaItems; @@ -261,13 +261,13 @@ public class AlphaInventoryTracker extends StoredObject { AlphaItems.doPlace(handItem, direction, placedAgainst); if (handItem.identifier() < 256 || handItem.identifier() == ItemList1_6.reed.itemID) { // block item - if (targetBlock.id == 0 || targetBlock.id == BlockList1_6.waterStill.blockID || targetBlock.id == BlockList1_6.waterMoving.blockID || targetBlock.id == BlockList1_6.lavaStill.blockID || targetBlock.id == BlockList1_6.lavaMoving.blockID || targetBlock.id == BlockList1_6.fire.blockID || targetBlock.id == BlockList1_6.snow.blockID) { + if (targetBlock.getId() == 0 || targetBlock.getId() == BlockList1_6.waterStill.blockID || targetBlock.getId() == BlockList1_6.waterMoving.blockID || targetBlock.getId() == BlockList1_6.lavaStill.blockID || targetBlock.getId() == BlockList1_6.lavaMoving.blockID || targetBlock.getId() == BlockList1_6.fire.blockID || targetBlock.getId() == BlockList1_6.snow.blockID) { handItem.setAmount(handItem.amount() - 1); } } else if (handItem.identifier() == ItemList1_6.sign.itemID) { - if (direction != 0 && targetBlock.id == 0) handItem.setAmount(handItem.amount() - 1); + if (direction != 0 && targetBlock.getId() == 0) handItem.setAmount(handItem.amount() - 1); } else if (handItem.identifier() == ItemList1_6.redstone.itemID) { - if (targetBlock.id == 0) handItem.setAmount(handItem.amount() - 1); + if (targetBlock.getId() == 0) handItem.setAmount(handItem.amount() - 1); } } diff --git a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocol1_0_0_1tob1_8_0_1/task/PlayerAirTimeUpdateTask.java b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocol1_0_0_1tob1_8_0_1/task/PlayerAirTimeUpdateTask.java index 1f6ffbf..e3c023d 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocol1_0_0_1tob1_8_0_1/task/PlayerAirTimeUpdateTask.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocol1_0_0_1tob1_8_0_1/task/PlayerAirTimeUpdateTask.java @@ -23,9 +23,9 @@ import com.viaversion.viaversion.api.connection.UserConnection; import com.viaversion.viaversion.api.minecraft.metadata.Metadata; import com.viaversion.viaversion.api.protocol.packet.PacketWrapper; import com.viaversion.viaversion.api.type.Type; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.ViaLegacy; import net.raphimc.vialegacy.api.data.BlockList1_6; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.protocols.beta.protocol1_0_0_1tob1_8_0_1.Protocol1_0_0_1tob1_8_0_1; import net.raphimc.vialegacy.protocols.beta.protocol1_0_0_1tob1_8_0_1.storage.PlayerAirTimeStorage; import net.raphimc.vialegacy.protocols.release.protocol1_1to1_0_0_1.ClientboundPackets1_0; @@ -50,7 +50,7 @@ public class PlayerAirTimeUpdateTask implements Runnable { try { final IdAndData headBlock = info.get(ChunkTracker.class).getBlockNotNull(floor(playerInfoStorage.posX), floor(playerInfoStorage.posY + 1.62F), floor(playerInfoStorage.posZ)); - if (headBlock.id == BlockList1_6.waterMoving.blockID || headBlock.id == BlockList1_6.waterStill.blockID) { + if (headBlock.getId() == BlockList1_6.waterMoving.blockID || headBlock.getId() == BlockList1_6.waterStill.blockID) { playerAirTimeStorage.sentPacket = false; playerAirTimeStorage.air--; if (playerAirTimeStorage.air < 0) playerAirTimeStorage.air = 0; diff --git a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_2_0_2tob1_1_2/Protocolb1_2_0_2tob1_1_2.java b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_2_0_2tob1_1_2/Protocolb1_2_0_2tob1_1_2.java index 1aeb937..eba5e03 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_2_0_2tob1_1_2/Protocolb1_2_0_2tob1_1_2.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_2_0_2tob1_1_2/Protocolb1_2_0_2tob1_1_2.java @@ -24,7 +24,7 @@ import com.viaversion.viaversion.api.minecraft.metadata.Metadata; import com.viaversion.viaversion.api.protocol.packet.PacketWrapper; import com.viaversion.viaversion.api.protocol.remapper.PacketHandlers; import com.viaversion.viaversion.api.type.Type; -import net.raphimc.vialegacy.api.model.IdAndData; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.api.protocol.StatelessProtocol; import net.raphimc.vialegacy.api.splitter.PreNettySplitter; import net.raphimc.vialegacy.protocols.beta.protocolb1_2_0_2tob1_1_2.rewriter.BlockDataRewriter; @@ -155,8 +155,8 @@ public class Protocolb1_2_0_2tob1_1_2 extends StatelessProtocol { final IdAndData block = new IdAndData(wrapper.get(Type.UNSIGNED_BYTE, 0), wrapper.get(Type.UNSIGNED_BYTE, 1)); BLOCK_DATA_REWRITER.remapBlock(block); - wrapper.set(Type.UNSIGNED_BYTE, 0, (short) block.id); - wrapper.set(Type.UNSIGNED_BYTE, 1, (short) block.data); + wrapper.set(Type.UNSIGNED_BYTE, 0, (short) block.getId()); + wrapper.set(Type.UNSIGNED_BYTE, 1, (short) block.getData()); }); } }); diff --git a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_2_0_2tob1_1_2/rewriter/BlockDataRewriter.java b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_2_0_2tob1_1_2/rewriter/BlockDataRewriter.java index 2a665d4..0af7a7b 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_2_0_2tob1_1_2/rewriter/BlockDataRewriter.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_2_0_2tob1_1_2/rewriter/BlockDataRewriter.java @@ -17,8 +17,8 @@ */ package net.raphimc.vialegacy.protocols.beta.protocolb1_2_0_2tob1_1_2.rewriter; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.api.data.BlockList1_6; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.api.remapper.AbstractBlockRemapper; public class BlockDataRewriter extends AbstractBlockRemapper { diff --git a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_3_0_1tob1_2_0_2/Protocolb1_3_0_1tob1_2_0_2.java b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_3_0_1tob1_2_0_2/Protocolb1_3_0_1tob1_2_0_2.java index f5ac43e..076ec6e 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_3_0_1tob1_2_0_2/Protocolb1_3_0_1tob1_2_0_2.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_3_0_1tob1_2_0_2/Protocolb1_3_0_1tob1_2_0_2.java @@ -25,7 +25,7 @@ import com.viaversion.viaversion.api.platform.providers.ViaProviders; import com.viaversion.viaversion.api.protocol.packet.PacketWrapper; import com.viaversion.viaversion.api.protocol.remapper.PacketHandlers; import com.viaversion.viaversion.api.type.Type; -import net.raphimc.vialegacy.api.model.IdAndData; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.api.protocol.StatelessProtocol; import net.raphimc.vialegacy.api.splitter.PreNettySplitter; import net.raphimc.vialegacy.protocols.beta.protocolb1_3_0_1tob1_2_0_2.data.BlockHardnessList; diff --git a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_3_0_1tob1_2_0_2/data/BlockHardnessList.java b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_3_0_1tob1_2_0_2/data/BlockHardnessList.java index 09901e9..314d51d 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_3_0_1tob1_2_0_2/data/BlockHardnessList.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_3_0_1tob1_2_0_2/data/BlockHardnessList.java @@ -17,7 +17,7 @@ */ package net.raphimc.vialegacy.protocols.beta.protocolb1_3_0_1tob1_2_0_2.data; -import net.raphimc.vialegacy.api.model.IdAndData; +import com.viaversion.viaversion.util.IdAndData; import java.util.HashMap; import java.util.Map; @@ -116,7 +116,7 @@ public class BlockHardnessList { } public static boolean canBeBrokenInstantly(final IdAndData block) { - return canBeBrokenInstantly(block.id); + return canBeBrokenInstantly(block.getId()); } } diff --git a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_6_0_6tob1_5_0_2/Protocolb1_6_0_6tob1_5_0_2.java b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_6_0_6tob1_5_0_2/Protocolb1_6_0_6tob1_5_0_2.java index d6a0548..eccb45c 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_6_0_6tob1_5_0_2/Protocolb1_6_0_6tob1_5_0_2.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_6_0_6tob1_5_0_2/Protocolb1_6_0_6tob1_5_0_2.java @@ -25,9 +25,9 @@ import com.viaversion.viaversion.api.platform.providers.ViaProviders; import com.viaversion.viaversion.api.protocol.packet.PacketWrapper; import com.viaversion.viaversion.api.protocol.remapper.PacketHandlers; import com.viaversion.viaversion.api.type.Type; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.api.data.BlockList1_6; import net.raphimc.vialegacy.api.data.ItemList1_6; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.api.protocol.StatelessProtocol; import net.raphimc.vialegacy.api.splitter.PreNettySplitter; import net.raphimc.vialegacy.protocols.beta.protocolb1_6_0_6tob1_5_0_2.storage.WorldTimeStorage; @@ -90,17 +90,17 @@ public class Protocolb1_6_0_6tob1_5_0_2 extends StatelessProtocol 0) { + } else if (block.getId() == BlockList1_6.jukebox.blockID) { + if (block.getData() > 0) { final PacketWrapper effect = PacketWrapper.create(ClientboundPacketsb1_7.EFFECT, wrapper.user()); effect.write(Type.INT, 1005); // effect id effect.write(Types1_7_6.POSITION_UBYTE, pos); // position diff --git a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_8_0_1tob1_7_0_3/Protocolb1_8_0_1tob1_7_0_3.java b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_8_0_1tob1_7_0_3/Protocolb1_8_0_1tob1_7_0_3.java index 4d419c1..4434d06 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_8_0_1tob1_7_0_3/Protocolb1_8_0_1tob1_7_0_3.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/beta/protocolb1_8_0_1tob1_7_0_3/Protocolb1_8_0_1tob1_7_0_3.java @@ -297,7 +297,7 @@ public class Protocolb1_8_0_1tob1_7_0_3 extends StatelessProtocol> 4, pos.z() >> 4), k -> new ArrayList<>()).add(new BlockChangeRecord1_8(pos.x() & 15, pos.y(), pos.z() & 15, mappedBlock.toCompressedData())); + records.computeIfAbsent(new ChunkCoord(pos.x() >> 4, pos.z() >> 4), k -> new ArrayList<>()).add(new BlockChangeRecord1_8(pos.x() & 15, pos.y(), pos.z() & 15, mappedBlock.toRawData())); } for (Map.Entry> entry : records.entrySet()) { diff --git a/src/main/java/net/raphimc/vialegacy/protocols/classic/protocolc0_28_30toc0_28_30cpe/data/ExtendedClassicBlocks.java b/src/main/java/net/raphimc/vialegacy/protocols/classic/protocolc0_28_30toc0_28_30cpe/data/ExtendedClassicBlocks.java index 041cac3..ce2f01d 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/classic/protocolc0_28_30toc0_28_30cpe/data/ExtendedClassicBlocks.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/classic/protocolc0_28_30toc0_28_30cpe/data/ExtendedClassicBlocks.java @@ -21,8 +21,8 @@ import com.viaversion.viaversion.libs.fastutil.ints.Int2ObjectMap; import com.viaversion.viaversion.libs.fastutil.ints.Int2ObjectOpenHashMap; import com.viaversion.viaversion.libs.fastutil.objects.Object2IntMap; import com.viaversion.viaversion.libs.fastutil.objects.Object2IntOpenHashMap; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.api.data.BlockList1_6; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.protocols.classic.protocola1_0_15toc0_28_30.data.ClassicBlocks; public class ExtendedClassicBlocks { diff --git a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_2_1_3to1_1/Protocol1_2_1_3to1_1.java b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_2_1_3to1_1/Protocol1_2_1_3to1_1.java index d2f1905..7d23302 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_2_1_3to1_1/Protocol1_2_1_3to1_1.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_2_1_3to1_1/Protocol1_2_1_3to1_1.java @@ -28,9 +28,9 @@ import com.viaversion.viaversion.api.platform.providers.ViaProviders; import com.viaversion.viaversion.api.protocol.packet.PacketWrapper; import com.viaversion.viaversion.api.protocol.remapper.PacketHandlers; import com.viaversion.viaversion.api.type.Type; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.ViaLegacy; import net.raphimc.vialegacy.api.LegacyProtocolVersion; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.api.protocol.StatelessProtocol; import net.raphimc.vialegacy.api.remapper.LegacyItemRewriter; import net.raphimc.vialegacy.api.splitter.PreNettySplitter; @@ -253,7 +253,7 @@ public class Protocol1_2_1_3to1_1 extends StatelessProtocol { @@ -47,7 +47,7 @@ public class BlockChangeRecordArrayType extends Type { final BlockChangeRecord[] blockChangeRecords = new BlockChangeRecord[length]; for (int i = 0; i < length; i++) { - blockChangeRecords[i] = new BlockChangeRecord1_8(positions[i] >> 12 & 15, positions[i] & 255, positions[i] >> 8 & 15, IdAndData.toCompressedData(blocks[i], metas[i])); + blockChangeRecords[i] = new BlockChangeRecord1_8(positions[i] >> 12 & 15, positions[i] & 255, positions[i] >> 8 & 15, IdAndData.toRawData(blocks[i], metas[i])); } return blockChangeRecords; } diff --git a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_2_1_3to1_1/types/ChunkType1_1.java b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_2_1_3to1_1/types/ChunkType1_1.java index 4f1f767..3078a19 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_2_1_3to1_1/types/ChunkType1_1.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_2_1_3to1_1/types/ChunkType1_1.java @@ -20,8 +20,8 @@ package net.raphimc.vialegacy.protocols.release.protocol1_2_1_3to1_1.types; import com.viaversion.viaversion.api.minecraft.Position; import com.viaversion.viaversion.api.minecraft.chunks.*; import com.viaversion.viaversion.api.type.Type; +import com.viaversion.viaversion.util.IdAndData; import io.netty.buffer.ByteBuf; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.protocols.release.protocol1_2_1_3to1_1.chunks.NibbleArray1_1; import net.raphimc.vialegacy.protocols.release.protocol1_2_1_3to1_1.model.NonFullChunk1_1; @@ -149,7 +149,7 @@ public class ChunkType1_1 extends Type { for (int x = startX; x < endX; x++) { for (int z = startZ; z < endZ; z++) { - section.palette(PaletteType.BLOCKS).setIdAt(x, y & 15, z, IdAndData.toCompressedData(blockArray[x << 11 | z << 7 | y] & 255, blockDataArray.get(x, y, z))); + section.palette(PaletteType.BLOCKS).setIdAt(x, y & 15, z, IdAndData.toRawData(blockArray[x << 11 | z << 7 | y] & 255, blockDataArray.get(x, y, z))); sectionSkyLight.set(x, y & 15, z, skyLightArray.get(x, y, z)); sectionBlockLight.set(x, y & 15, z, blockLightArray.get(x, y, z)); } diff --git a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_3_1_2to1_2_4_5/Protocol1_3_1_2to1_2_4_5.java b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_3_1_2to1_2_4_5/Protocol1_3_1_2to1_2_4_5.java index 01c332f..707ebab 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_3_1_2to1_2_4_5/Protocol1_3_1_2to1_2_4_5.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_3_1_2to1_2_4_5/Protocol1_3_1_2to1_2_4_5.java @@ -39,9 +39,9 @@ import com.viaversion.viaversion.libs.opennbt.tag.builtin.IntTag; import com.viaversion.viaversion.libs.opennbt.tag.builtin.ShortTag; import com.viaversion.viaversion.libs.opennbt.tag.builtin.StringTag; import com.viaversion.viaversion.util.ChunkUtil; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.ViaLegacy; import net.raphimc.vialegacy.api.data.BlockList1_6; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.api.model.Location; import net.raphimc.vialegacy.api.protocol.StatelessProtocol; import net.raphimc.vialegacy.api.remapper.LegacyItemRewriter; @@ -487,7 +487,7 @@ public class Protocol1_3_1_2to1_2_4_5 extends StatelessProtocol { final IdAndData block = wrapper.user().get(ChunkTracker.class).getBlockNotNull(wrapper.get(Types1_7_6.POSITION_SHORT, 0)); - wrapper.write(Type.SHORT, (short) block.id); // block id + wrapper.write(Type.SHORT, (short) block.getId()); // block id final EntityTracker entityTracker = wrapper.user().get(EntityTracker.class); final Position pos = wrapper.get(Types1_7_6.POSITION_SHORT, 0); @@ -500,7 +500,7 @@ public class Protocol1_3_1_2to1_2_4_5 extends StatelessProtocol> 16; final IdAndData block = new IdAndData(id, metadata); wrapper.user().get(ChunkTracker.class).remapBlockParticle(block); - data = (block.id & 0xFFFF) | block.data << 16; + data = (block.getId() & 0xFFFF) | block.getData() << 16; } wrapper.set(Type.INT, 3, data); }); @@ -409,10 +409,10 @@ public class Protocol1_7_2_5to1_6_4 extends StatelessTransitionProtocol> 12 & 255; final IdAndData block = new IdAndData(blockID, blockData); chunkTracker.remapBlockParticle(block); - data = (block.id & 4095) | block.data << 12; + data = (block.getId() & 4095) | block.getData() << 12; wrapper.set(Type.INT, 1, data); } @@ -552,8 +552,8 @@ public class Protocol1_7_2_5to1_6_4 extends StatelessTransitionProtocol> 16; final IdAndData block = new IdAndData(id, metadata); wrapper.user().get(ChunkTracker.class).remapBlockParticle(block); - data = block.id | block.data << 12; + data = block.getId() | block.getData() << 12; } y = realignEntityY(type, y); @@ -632,10 +632,10 @@ public class Protocol1_8to1_7_6_10 extends AbstractProtocol 2.5D) var21 = 2.5D; final float var25 = randomFloatClamp(rnd, 0.0F, ((float) Math.PI * 2F)); @@ -734,7 +734,7 @@ public class Protocol1_8to1_7_6_10 extends AbstractProtocol> 12 & 255; final IdAndData block = new IdAndData(blockID, blockData); chunkTracker.remapBlockParticle(block); - data = block.id | (block.data << 12); + data = block.getId() | (block.getData() << 12); } wrapper.write(Type.INT, effectId); @@ -790,7 +790,7 @@ public class Protocol1_8to1_7_6_10 extends AbstractProtocol 0) throw new IllegalStateException("Tried to write particle which requires extra data, but no handler was found"); }); diff --git a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/metadata/MetadataRewriter.java b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/metadata/MetadataRewriter.java index 314f70d..5eaff07 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/metadata/MetadataRewriter.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/metadata/MetadataRewriter.java @@ -21,8 +21,8 @@ import com.viaversion.viaversion.api.connection.UserConnection; import com.viaversion.viaversion.api.minecraft.entities.EntityTypes1_10; import com.viaversion.viaversion.api.minecraft.item.Item; import com.viaversion.viaversion.api.minecraft.metadata.Metadata; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.ViaLegacy; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.protocols.release.protocol1_8to1_7_6_10.Protocol1_8to1_7_6_10; import net.raphimc.vialegacy.protocols.release.protocol1_8to1_7_6_10.storage.ChunkTracker; @@ -72,7 +72,7 @@ public class MetadataRewriter { final byte data = blockDataMeta != null ? (Byte) blockDataMeta.getValue() : 0; final IdAndData block = new IdAndData(id, data); user.get(ChunkTracker.class).remapBlockParticle(block); - entry.setValue((short) (block.id | (block.data << 12))); + entry.setValue((short) (block.getId() | (block.getData() << 12))); continue; } else if (metaIndex == MetaIndex1_8to1_7_6.HUMAN_SKIN_FLAGS) { byte flags = (byte) value; diff --git a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/storage/ChunkTracker.java b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/storage/ChunkTracker.java index 4a2393c..2814c5a 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/storage/ChunkTracker.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/storage/ChunkTracker.java @@ -18,8 +18,8 @@ package net.raphimc.vialegacy.protocols.release.protocol1_8to1_7_6_10.storage; import com.viaversion.viaversion.api.minecraft.chunks.DataPalette; +import com.viaversion.viaversion.util.IdAndData; import net.raphimc.vialegacy.api.data.BlockList1_6; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.api.remapper.AbstractChunkTracker; public class ChunkTracker extends AbstractChunkTracker { @@ -43,11 +43,11 @@ public class ChunkTracker extends AbstractChunkTracker { @Override protected void remapBlock(IdAndData block, int x, int y, int z) { - if (block.id == BlockList1_6.portal.blockID && block.data == 0) { - if (this.getBlockNotNull(x - 1, y, z).id == BlockList1_6.obsidian.blockID || this.getBlockNotNull(x + 1, y, z).id == BlockList1_6.obsidian.blockID) { - block.data = 1; + if (block.getId() == BlockList1_6.portal.blockID && block.getData() == 0) { + if (this.getBlockNotNull(x - 1, y, z).getId() == BlockList1_6.obsidian.blockID || this.getBlockNotNull(x + 1, y, z).getId() == BlockList1_6.obsidian.blockID) { + block.setData(1); } else { - block.data = 2; + block.setData(2); } } } diff --git a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/types/ChunkType1_7_6.java b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/types/ChunkType1_7_6.java index 27b991a..7df29e3 100644 --- a/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/types/ChunkType1_7_6.java +++ b/src/main/java/net/raphimc/vialegacy/protocols/release/protocol1_8to1_7_6_10/types/ChunkType1_7_6.java @@ -19,9 +19,9 @@ package net.raphimc.vialegacy.protocols.release.protocol1_8to1_7_6_10.types; import com.viaversion.viaversion.api.minecraft.chunks.*; import com.viaversion.viaversion.api.type.Type; +import com.viaversion.viaversion.util.IdAndData; import com.viaversion.viaversion.util.Pair; import io.netty.buffer.ByteBuf; -import net.raphimc.vialegacy.api.model.IdAndData; import net.raphimc.vialegacy.protocols.release.protocol1_8to1_7_6_10.chunks.ExtendedBlockStorage; import java.io.ByteArrayOutputStream; @@ -188,7 +188,7 @@ public class ChunkType1_7_6 extends Type { for (int x = 0; x < 16; x++) { for (int z = 0; z < 16; z++) { for (int y = 0; y < 16; y++) { - section.palette(PaletteType.BLOCKS).setIdAt(x, y, z, IdAndData.toCompressedData(storage.getBlockId(x, y, z), storage.getBlockMetadata(x, y, z))); + section.palette(PaletteType.BLOCKS).setIdAt(x, y, z, IdAndData.toRawData(storage.getBlockId(x, y, z), storage.getBlockMetadata(x, y, z))); } } }