Skip to content

Commit 76a6e67

Browse files
committed
Limit render distance to 8
1 parent e2ed832 commit 76a6e67

5 files changed

Lines changed: 36 additions & 2 deletions

File tree

build.gradle

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ plugins {
66
version = project.mod_version
77
group = project.maven_group
88

9+
loom {
10+
accessWidenerPath = file("src/main/resources/artvk.classtweaker")
11+
}
12+
913
repositories {
1014
// Add repositories to retrieve artifacts from in here.
1115
// You should only use this when depending on other mods because
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package git.artdeell.mixin;
2+
3+
import net.minecraft.client.Minecraft;
4+
import net.minecraft.client.OptionInstance;
5+
import net.minecraft.client.Options;
6+
import net.minecraft.client.main.GameConfig;
7+
import org.jetbrains.annotations.NotNull;
8+
import org.spongepowered.asm.mixin.Final;
9+
import org.spongepowered.asm.mixin.Mixin;
10+
import org.spongepowered.asm.mixin.Shadow;
11+
import org.spongepowered.asm.mixin.injection.At;
12+
import org.spongepowered.asm.mixin.injection.Inject;
13+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
14+
15+
@Mixin(Minecraft.class)
16+
public class RenderDistanceMixin {
17+
@Final @Shadow public Options options;
18+
@Inject(method = "<init>", at = @At("RETURN"))
19+
private void onMinecraftConstructed(GameConfig gameConfig, CallbackInfo ci) {
20+
OptionInstance<@NotNull Integer> renderDistanceOption = options.renderDistance();
21+
renderDistanceOption.values = new OptionInstance.IntRange(2, 8);
22+
if(renderDistanceOption.get() > 8) renderDistanceOption.set(8);
23+
}
24+
25+
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
classTweaker v1 official
2+
accessible field net/minecraft/client/OptionInstance values Lnet/minecraft/client/OptionInstance$ValueSet;
3+
mutable field net/minecraft/client/OptionInstance values Lnet/minecraft/client/OptionInstance$ValueSet;

src/main/resources/artvk.mixins.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
"package": "git.artdeell.mixin",
44
"compatibilityLevel": "JAVA_25",
55
"mixins": [
6-
"Vk11BackendMixin"
6+
"Vk11BackendMixin",
7+
"RenderDistanceMixin"
78
],
89
"injectors": {
910
"defaultRequire": 1

src/main/resources/fabric.mod.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
},
1313
"license": "Polyform-Shield-1.0.0",
1414
"icon": "assets/dogshitvk/icon.png",
15-
"environment": "*",
15+
"accessWidener": "artvk.classtweaker",
16+
"environment": "client",
1617
"entrypoints": {
1718
"main": [
1819
"git.artdeell.ArtVK"

0 commit comments

Comments
 (0)