UBC mixin crash fix (fixes #20)

This commit is contained in:
FalsePattern committed 2022-07-14 22:10:22 +02:00
1 parent fb3ac74956
commit 5e024d8a0c
1 file changed
+6 -3
@@ -19,7 +19,8 @@ public abstract class BiomeUndergroundDecoratorMixin {
@Redirect(method = {"replaceChunkOres(IILnet/minecraft/world/World;)V",
"replaceChunkOres(Lnet/minecraft/world/chunk/IChunkProvider;II)V"},
at = @At(value = "INVOKE",
target = "Lnet/minecraft/world/chunk/storage/ExtendedBlockStorage;getBlockLSBArray()[B"),
target = "Lnet/minecraft/world/chunk/storage/ExtendedBlockStorage;getBlockLSBArray()[B",
remap = true),
require = 2)
private byte[] returnMSBasLSB(ExtendedBlockStorage instance) {
if (ebs == null) {
@@ -33,7 +34,8 @@ public abstract class BiomeUndergroundDecoratorMixin {
@Redirect(method = {"replaceChunkOres(IILnet/minecraft/world/World;)V",
"replaceChunkOres(Lnet/minecraft/world/chunk/IChunkProvider;II)V"},
at = @At(value = "INVOKE",
target = "Lnet/minecraft/world/chunk/storage/ExtendedBlockStorage;getBlockMSBArray()Lnet/minecraft/world/chunk/NibbleArray;"),
target = "Lnet/minecraft/world/chunk/storage/ExtendedBlockStorage;getBlockMSBArray()Lnet/minecraft/world/chunk/NibbleArray;",
remap = true),
require = 4)
private NibbleArray returnFakeArray(ExtendedBlockStorage instance) {
return fakeArray == null ? (fakeArray = new NibbleArray(4096, 4)) : fakeArray;
@@ -42,7 +44,8 @@ public abstract class BiomeUndergroundDecoratorMixin {
@Redirect(method = {"replaceChunkOres(IILnet/minecraft/world/World;)V",
"replaceChunkOres(Lnet/minecraft/world/chunk/IChunkProvider;II)V"},
at = @At(value = "INVOKE",
target = "Lnet/minecraft/world/chunk/NibbleArray;get(III)I"),
target = "Lnet/minecraft/world/chunk/NibbleArray;get(III)I",
remap = true),
require = 2)
private int returnRestOfID(NibbleArray instance, int x, int y, int z) {
return ebs.get().getLSB()[y << 8 | z << 4 | x] & 0xFFFF;