mirror of
https://github.com/Motschen/Blur.git
synced 2025-12-17 04:05:10 +01:00
Update to 1.21 & Add exclusion list
- Iris' shader selection screen is excluded by default - Also added unifiedPublishing for easier update publishing
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
package eu.midnightdust.blur.config;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import eu.midnightdust.lib.config.MidnightConfig;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.function.Function;
|
||||
|
||||
import static java.lang.Math.*;
|
||||
@@ -32,6 +35,8 @@ public class BlurConfig extends MidnightConfig {
|
||||
public static int gradientRotation = 0;
|
||||
@Entry(category = STYLE)
|
||||
public static boolean rainbowMode = false;
|
||||
@Entry(category = STYLE)
|
||||
public static List<String> excludedScreens = Lists.newArrayList("net.irisshaders.iris.gui.screen.ShaderPackScreen");
|
||||
|
||||
public enum Easing {
|
||||
// Based on https://gist.github.com/dev-hydrogen/21a66f83f0386123e0c0acf107254843
|
||||
|
||||
@@ -4,6 +4,7 @@ import eu.midnightdust.blur.Blur;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.gui.DrawContext;
|
||||
import net.minecraft.client.gui.hud.InGameHud;
|
||||
import net.minecraft.client.render.RenderTickCounter;
|
||||
import org.spongepowered.asm.mixin.Final;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.Shadow;
|
||||
@@ -16,11 +17,11 @@ public class MixinInGameHud {
|
||||
@Final @Shadow private MinecraftClient client;
|
||||
|
||||
@Inject(at = @At("TAIL"), method = "render")
|
||||
public void blur$renderFadeOut(DrawContext context, float delta, CallbackInfo ci) { // Adds a fade-out effect when a player is in a world and closes all screens
|
||||
public void blur$renderFadeOut(DrawContext context, RenderTickCounter tickCounter, CallbackInfo ci) { // Adds a fade-out effect when a player is in a world and closes all screens
|
||||
if (client.currentScreen == null && client.world != null && Blur.start >= 0 && Blur.prevScreenHasBlur) {
|
||||
Blur.doTest = false;
|
||||
Blur.screenChanged = false;
|
||||
this.client.gameRenderer.renderBlur(delta);
|
||||
this.client.gameRenderer.renderBlur(tickCounter.getTickDelta(true));
|
||||
this.client.getFramebuffer().beginWrite(false);
|
||||
|
||||
if (Blur.prevScreenHasBackground) Blur.renderRotatedGradient(context, client.getWindow().getScaledWidth(), client.getWindow().getScaledHeight());
|
||||
|
||||
@@ -49,7 +49,8 @@ public abstract class MixinScreen {
|
||||
}
|
||||
@Inject(at = @At("HEAD"), method = "applyBlur")
|
||||
public void blur$getBlurEnabled(float delta, CallbackInfo ci) {
|
||||
Blur.screenHasBlur = true; // Test if the screen has blur
|
||||
if (!BlurConfig.excludedScreens.contains(this.getClass().toString()))
|
||||
Blur.screenHasBlur = true; // Test if the screen has blur
|
||||
}
|
||||
|
||||
@Inject(at = @At("HEAD"), method = "renderDarkening(Lnet/minecraft/client/gui/DrawContext;IIII)V", cancellable = true)
|
||||
|
||||
@@ -23,5 +23,6 @@
|
||||
"blur.midnightconfig.gradientEnd": "Farbverlauf-Endfarbe",
|
||||
"blur.midnightconfig.gradientStartAlpha": "Farbverlauf-Anfangstransparenz",
|
||||
"blur.midnightconfig.gradientEndAlpha": "Farbverlauf-Endstransparenz",
|
||||
"blur.midnightconfig.gradientRotation": "Farbverlauf-Rotation"
|
||||
"blur.midnightconfig.gradientRotation": "Farbverlauf-Rotation",
|
||||
"blur.midnightconfig.excludedScreens": "Ausgeschlossene Bildschirme"
|
||||
}
|
||||
@@ -23,5 +23,6 @@
|
||||
"blur.midnightconfig.gradientEnd": "Gradient End Color",
|
||||
"blur.midnightconfig.gradientStartAlpha": "Gradient Start Alpha",
|
||||
"blur.midnightconfig.gradientEndAlpha": "Gradient End Alpha",
|
||||
"blur.midnightconfig.gradientRotation": "Gradient Rotation"
|
||||
"blur.midnightconfig.gradientRotation": "Gradient Rotation",
|
||||
"blur.midnightconfig.excludedScreens": "Excluded Screens"
|
||||
}
|
||||
Reference in New Issue
Block a user