Skip to content

Commit 62bddab

Browse files
committed
Added Fullbright
1 parent ef87dad commit 62bddab

File tree

21 files changed

+184
-24
lines changed

21 files changed

+184
-24
lines changed

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ org.gradle.jvmargs=-Xmx1G
33
org.gradle.parallel=true
44

55
# SimpleClient
6-
simpleclient_version=0.1.1-dev
6+
simpleclient_version=0.1.3-dev

simpleclient-1.19.4/build.gradle

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,10 @@ dependencies {
2121
include "io.github.ladysnake:satin:${project.satin_version}"
2222
}
2323

24+
loom {
25+
accessWidenerPath = file('src/main/resources/simpleclient.accesswidener')
26+
}
27+
2428
sourceSets {
2529
main.resources.srcDirs += "${project(':simpleclient-core').projectDir}/src/main/resources"
2630
}

simpleclient-1.19.4/src/main/java/simpleclient/feature/FeatureManagerImpl.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ public void init() {
1717
}
1818
});
1919
addFeature(new FPS());
20+
addFeature(new Fullbright());
2021
addFeature(new PerformanceBoost());
2122
addFeature(new Ping());
2223
addFeature(new Motionblur());
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package simpleclient.feature;
2+
3+
import com.google.gson.JsonObject;
4+
5+
public class Fullbright extends EnableableFeature {
6+
public static boolean ENABLED = false;
7+
8+
public Fullbright() {
9+
super(FeatureType.FULLBRIGHT);
10+
refresh();
11+
}
12+
13+
public void refresh() {
14+
ENABLED = isEnabled();
15+
}
16+
17+
@Override
18+
public void setData(JsonObject data) {
19+
super.setData(data);
20+
refresh();
21+
}
22+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package simpleclient.mixin;
2+
3+
import net.minecraft.client.Minecraft;
4+
import net.minecraft.client.OptionInstance;
5+
import net.minecraft.client.Options;
6+
import org.spongepowered.asm.mixin.Mixin;
7+
import org.spongepowered.asm.mixin.Shadow;
8+
import org.spongepowered.asm.mixin.injection.At;
9+
import org.spongepowered.asm.mixin.injection.Inject;
10+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
11+
import simpleclient.util.GammaOptionInstance;
12+
13+
import java.io.File;
14+
15+
@Mixin(Options.class)
16+
public abstract class OptionsMixin {
17+
@Shadow private OptionInstance<Double> gamma;
18+
19+
@Inject(at = @At("TAIL"), method = "<init>")
20+
private void init(Minecraft minecraft, File file, CallbackInfo ci) {
21+
gamma = new GammaOptionInstance();
22+
}
23+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package simpleclient.util;
2+
3+
import net.minecraft.client.OptionInstance;
4+
import net.minecraft.network.chat.Component;
5+
import simpleclient.feature.Fullbright;
6+
7+
public class GammaOptionInstance extends OptionInstance<Double> {
8+
public GammaOptionInstance() {
9+
super(
10+
"options.gamma",
11+
OptionInstance.noTooltip(),
12+
(component, value) -> {
13+
if (Fullbright.ENABLED) return component.copy().append(": Fullbright");
14+
else if (value == 0.0) return component.copy().append(": ").append(Component.translatable("options.gamma.min"));
15+
else if (value == 0.5) return component.copy().append(": ").append(Component.translatable("options.gamma.default"));
16+
else if (value == 1.0) return component.copy().append(": ").append(Component.translatable("options.gamma.max"));
17+
else return component.copy().append(": " + (int) (value * 100));
18+
},
19+
UnitDouble.INSTANCE,
20+
0.5, value -> {}
21+
);
22+
}
23+
24+
@Override
25+
public Double get() {
26+
return Fullbright.ENABLED ? 100.0 : super.get();
27+
}
28+
}

simpleclient-1.19.4/src/main/resources/fabric.mod.json

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,7 @@
44
"version": "${version}",
55
"name": "SimpleClient",
66
"description": "SimpleClient is a simple Minecraft Client",
7-
"authors": [
8-
"Fabi.exe",
9-
"Noriskky"
10-
],
7+
"authors": ["Fabi.exe", "Noriskky"],
118
"contact": {
129
"homepage": "https://simpleclient.github.io",
1310
"sources": "https://github.com/SimpeClient"
@@ -19,9 +16,8 @@
1916
"client": ["simpleclient.SimpleClient"],
2017
"preLaunch": ["simpleclient.SimpleClientPreLaunch"]
2118
},
22-
"mixins": [
23-
"simpleclient.mixins.json"
24-
],
19+
"mixins": ["simpleclient.mixins.json"],
20+
"accessWidener": "simpleclient.accesswidener",
2521
"depends": {
2622
"java": ">=17",
2723
"minecraft": "~${minecraft_version}",
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
accessWidener v1 named
2+
extendable class net/minecraft/client/OptionInstance
3+
mutable field net/minecraft/client/Options gamma Lnet/minecraft/client/OptionInstance;

simpleclient-1.19.4/src/main/resources/simpleclient.mixins.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,10 @@
1010
"GuiMixin",
1111
"performance.LevelRendererMixin",
1212
"performance.OptionsMixin",
13-
"performance.SharedConstantsMixin"
13+
"performance.SharedConstantsMixin",
14+
"OptionsMixin"
1415
],
1516
"injectors": {
1617
"defaultRequire": 1
1718
}
18-
}
19+
}

simpleclient-1.20/build.gradle

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,10 @@ dependencies {
2121
//include "io.github.ladysnake:satin:${project.satin_version}"
2222
}
2323

24+
loom {
25+
accessWidenerPath = file('src/main/resources/simpleclient.accesswidener')
26+
}
27+
2428
sourceSets {
2529
main.resources.srcDirs += "${project(':simpleclient-core').projectDir}/src/main/resources"
2630
}

0 commit comments

Comments
 (0)