diff --git a/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/clipboard/io/FastSchematicWriterV3.java b/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/clipboard/io/FastSchematicWriterV3.java index 66e02f5925..9683ee25db 100644 --- a/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/clipboard/io/FastSchematicWriterV3.java +++ b/worldedit-core/src/main/java/com/fastasyncworldedit/core/extent/clipboard/io/FastSchematicWriterV3.java @@ -15,8 +15,8 @@ import com.sk89q.worldedit.math.BlockVector3; import com.sk89q.worldedit.regions.Region; import com.sk89q.worldedit.world.biome.BiomeType; +import com.sk89q.worldedit.world.biome.BiomeTypes; import com.sk89q.worldedit.world.block.BaseBlock; -import com.sk89q.worldedit.world.block.BlockStateHolder; import com.sk89q.worldedit.world.block.BlockTypesCache; import net.jpountz.lz4.LZ4BlockInputStream; import net.jpountz.lz4.LZ4BlockOutputStream; @@ -145,7 +145,7 @@ private void writeBlocks(NBTOutputStream blocks, Clipboard clipboard) throws IOE } return ordinal; }, - BlockStateHolder::getAsString, + ordinal -> BlockTypesCache.states[ordinal].getAsString(), clipboard ); lz4Stream.finish(); @@ -168,7 +168,7 @@ private void writeBiomes(NBTOutputStream biomes, Clipboard clipboard) throws IOE biomes, BiomeType.REGISTRY.size(), pos -> pos.getBiome(clipboard), biome -> (char) biome.getInternalId(), - BiomeType::id, + ordinal -> BiomeTypes.get(ordinal).id(), clipboard ); } @@ -218,7 +218,7 @@ private void writePalette( NBTOutputStream out, int capacity, Function objectResolver, Function ordinalResolver, - Function paletteEntryResolver, + Function paletteEntryResolver, Clipboard clipboard ) throws IOException { int dataBytesUsed = 0; @@ -240,7 +240,7 @@ private void writePalette( if (index >= palette.length) { throw new IOException("insufficient palette capacity: " + palette.length + ", index: " + index); } - out.writeNamedTag(paletteEntryResolver.apply(obj), value); + out.writeNamedTag(paletteEntryResolver.apply(ordinal), value); } if ((value & -128) != 0) { dataBytesUsed++;