mirror of
https://github.com/Motschen/Blur.git
synced 2025-12-15 19:25:09 +01:00
feat: title screen blur
- Also fix config changes not being saved
This commit is contained in:
@@ -17,6 +17,10 @@ public class BlurConfig extends MidnightConfig {
|
||||
|
||||
@Entry(category = SCREENS)
|
||||
public static boolean blurContainers = true;
|
||||
@Entry(category = SCREENS)
|
||||
public static boolean blurTitleScreen = false;
|
||||
@Entry(category = SCREENS)
|
||||
public static boolean darkenTitleScreen = false;
|
||||
@Entry(category = ANIMATIONS, min = 0, max = 2000, isSlider = true)
|
||||
public static int fadeTimeMillis = 300;
|
||||
@Entry(category = ANIMATIONS, min = 0, max = 2000, isSlider = true)
|
||||
@@ -48,6 +52,7 @@ public class BlurConfig extends MidnightConfig {
|
||||
|
||||
@Override
|
||||
public void writeChanges(String modid) {
|
||||
super.writeChanges(modid);
|
||||
MinecraftClient.getInstance().options.getMenuBackgroundBlurriness().setValue(radius);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
package eu.midnightdust.blur.mixin;
|
||||
|
||||
import eu.midnightdust.blur.Blur;
|
||||
import eu.midnightdust.blur.config.BlurConfig;
|
||||
import net.minecraft.client.gui.DrawContext;
|
||||
import net.minecraft.client.gui.screen.Screen;
|
||||
import net.minecraft.client.gui.screen.TitleScreen;
|
||||
import net.minecraft.text.Text;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
|
||||
@Mixin(TitleScreen.class)
|
||||
public abstract class MixinTitleScreen extends Screen {
|
||||
protected MixinTitleScreen(Text title) {
|
||||
super(title);
|
||||
}
|
||||
|
||||
@Inject(method = "renderPanoramaBackground", at = @At("TAIL"))
|
||||
private void blur$renderTitleBlur(DrawContext context, float delta, CallbackInfo ci) { // Applies the blur effect in containers (Inventory, Chest, etc.)
|
||||
if (BlurConfig.blurTitleScreen) {
|
||||
Blur.updateProgress(true);
|
||||
this.applyBlur();
|
||||
if (BlurConfig.darkenTitleScreen) this.renderDarkening(context);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,8 @@
|
||||
"blur.midnightconfig.category.animations": "Animationen",
|
||||
"blur.midnightconfig.category.style": "Stil",
|
||||
"blur.midnightconfig.blurContainers": "Unschärfe in Containern",
|
||||
"blur.midnightconfig.blurTitleScreen": "Unschärfe im Titelbildschirm",
|
||||
"blur.midnightconfig.darkenTitleScreen": "Abgedunkelter Titelhintergrund",
|
||||
"blur.midnightconfig.fadeTimeMillis": "Überblendzeit (in Millisekunden)",
|
||||
"blur.midnightconfig.fadeOutTimeMillis": "Ausblendzeit (in Millisekunden)",
|
||||
"blur.midnightconfig.animationCurve": "Animationskurve",
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
"blur.midnightconfig.category.style": "Style",
|
||||
"blur.midnightconfig.category.screens": "Screens",
|
||||
"blur.midnightconfig.blurContainers": "Apply Blur to Containers",
|
||||
"blur.midnightconfig.blurTitleScreen": "Apply Blur to Title Screen",
|
||||
"blur.midnightconfig.darkenTitleScreen": "Darken Title Screen Background",
|
||||
"blur.midnightconfig.fadeTimeMillis": "Fade Time (in milliseconds)",
|
||||
"blur.midnightconfig.fadeOutTimeMillis": "Fade Out Time (in milliseconds)",
|
||||
"blur.midnightconfig.animationCurve": "Animation Curve",
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
"MixinMidnightSliderWidget",
|
||||
"MixinMinecraftClient",
|
||||
"MixinScreen",
|
||||
"MixinTitleScreen",
|
||||
"ScreenAccessor"
|
||||
],
|
||||
"injectors": {
|
||||
|
||||
Reference in New Issue
Block a user