Skip to content

Instantly share code, notes, and snippets.

@magneticflux-
Created June 15, 2022 20:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save magneticflux-/1e555fc8029e0c65610a6688ac58e36a to your computer and use it in GitHub Desktop.
Save magneticflux-/1e555fc8029e0c65610a6688ac58e36a to your computer and use it in GitHub Desktop.
Continuity Sodium/next (b98aca11) patch
Index: build.gradle
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/build.gradle b/build.gradle
--- a/build.gradle (revision d9c05615509db804bb818e30a77a207dd5f2b86a)
+++ b/build.gradle (date 1655324140698)
@@ -41,7 +41,7 @@
exclude group: 'net.fabricmc.fabric-api'
}
- modCompileOnly 'maven.modrinth:sodium:mc1.19-0.4.2'
+ modCompileOnly files("libs/sodium-fabric-0.5.0+mc1.19-unstable.jar")
modCompileOnly 'io.vram:canvas-fabric-mc118:1.0.2308'
modCompileOnly 'maven.modrinth:indium:1.0.3+mc1.18.2'
}
Index: src/main/java/me/pepperbell/continuity/client/mixin/WorldSliceAccessor.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/src/main/java/me/pepperbell/continuity/client/mixin/WorldSliceAccessor.java b/src/main/java/me/pepperbell/continuity/client/mixin/WorldSliceAccessor.java
new file mode 100644
--- /dev/null (date 1655324026477)
+++ b/src/main/java/me/pepperbell/continuity/client/mixin/WorldSliceAccessor.java (date 1655324026477)
@@ -0,0 +1,14 @@
+package me.pepperbell.continuity.client.mixin;
+
+import net.caffeinemc.sodium.world.slice.WorldSlice;
+import net.minecraft.world.biome.source.BiomeAccess;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.Pseudo;
+import org.spongepowered.asm.mixin.gen.Accessor;
+
+@Pseudo
+@Mixin(WorldSlice.class)
+public interface WorldSliceAccessor {
+ @Accessor
+ BiomeAccess getBiomeAccess();
+}
Index: src/main/resources/continuity.mixins.json
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/src/main/resources/continuity.mixins.json b/src/main/resources/continuity.mixins.json
--- a/src/main/resources/continuity.mixins.json (revision d9c05615509db804bb818e30a77a207dd5f2b86a)
+++ b/src/main/resources/continuity.mixins.json (date 1655324017903)
@@ -16,7 +16,8 @@
"RenderLayersMixin",
"SpriteAtlasTextureDataMixin",
"SpriteAtlasTextureMixin",
- "SpriteMixin"
+ "SpriteMixin",
+ "WorldSliceAccessor"
],
"injectors": {
"defaultRequire": 1
Index: src/main/java/me/pepperbell/continuity/client/util/biome/BiomeRetriever.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/src/main/java/me/pepperbell/continuity/client/util/biome/BiomeRetriever.java b/src/main/java/me/pepperbell/continuity/client/util/biome/BiomeRetriever.java
--- a/src/main/java/me/pepperbell/continuity/client/util/biome/BiomeRetriever.java (revision d9c05615509db804bb818e30a77a207dd5f2b86a)
+++ b/src/main/java/me/pepperbell/continuity/client/util/biome/BiomeRetriever.java (date 1655324113806)
@@ -1,17 +1,16 @@
package me.pepperbell.continuity.client.util.biome;
-import org.apache.commons.lang3.ArrayUtils;
-import org.jetbrains.annotations.ApiStatus;
-import org.jetbrains.annotations.Nullable;
-
import grondag.canvas.terrain.region.input.InputRegion;
-import me.jellysquid.mods.sodium.client.world.WorldSlice;
+import me.pepperbell.continuity.client.mixin.WorldSliceAccessor;
import net.fabricmc.loader.api.FabricLoader;
import net.minecraft.client.render.chunk.ChunkRendererRegion;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.BlockRenderView;
import net.minecraft.world.WorldView;
import net.minecraft.world.biome.Biome;
+import org.apache.commons.lang3.ArrayUtils;
+import org.jetbrains.annotations.ApiStatus;
+import org.jetbrains.annotations.Nullable;
public final class BiomeRetriever {
private static final Provider PROVIDER = createProvider();
@@ -21,10 +20,10 @@
if (FabricLoader.getInstance().isModLoaded("sodium")) {
try {
- Class<?> worldSliceClass = Class.forName("me.jellysquid.mods.sodium.client.world.WorldSlice", false, classLoader);
- worldSliceClass.getMethod("getBiomeAccess");
+ Class<?> worldSliceClass = Class.forName("net.caffeinemc.sodium.world.slice.WorldSlice", false, classLoader);
+ worldSliceClass.getDeclaredField("biomeAccess");
return BiomeRetriever::getBiomeByWorldSlice;
- } catch (ClassNotFoundException | NoSuchMethodException e) {
+ } catch (ClassNotFoundException | NoSuchFieldException e) {
//
}
return BiomeRetriever::getBiomeByWorldView;
@@ -72,7 +71,7 @@
// Sodium
private static Biome getBiomeByWorldSlice(BlockRenderView blockView, BlockPos pos) {
- if (blockView instanceof WorldSlice worldSlice) {
+ if (blockView instanceof WorldSliceAccessor worldSlice) {
return worldSlice.getBiomeAccess().getBiome(pos).value();
}
return getBiomeByWorldView(blockView, pos);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment