mirror of
https://github.com/Motschen/Blur.git
synced 2025-12-16 03:35:10 +01:00
30 lines
1.4 KiB
Java
30 lines
1.4 KiB
Java
package eu.midnightdust.blur.mixin;
|
|
|
|
import eu.midnightdust.blur.Blur;
|
|
import eu.midnightdust.blur.config.BlurConfig;
|
|
import eu.midnightdust.lib.util.PlatformFunctions;
|
|
import net.minecraft.client.gui.DrawContext;
|
|
import net.minecraft.client.gui.screen.Screen;
|
|
import net.minecraft.client.gui.screen.ingame.HandledScreen;
|
|
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(HandledScreen.class)
|
|
public class MixinHandledScreen extends Screen {
|
|
protected MixinHandledScreen(Text title) {
|
|
super(title);
|
|
}
|
|
|
|
@Inject(method = "renderBackground", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/screen/ingame/HandledScreen;drawBackground(Lnet/minecraft/client/gui/DrawContext;FII)V", shift = At.Shift.BEFORE))
|
|
private void blur$renderContainerBlur(DrawContext context, int mouseX, int mouseY, float tickDelta, CallbackInfo ci) { // Applies the blur effect in containers (Inventory, Chest, etc.)
|
|
if (BlurConfig.blurContainers) this.applyBlur(tickDelta);
|
|
}
|
|
@Inject(at = @At("HEAD"), method = "render")
|
|
public void blur$processScreenChange(DrawContext context, int mouseX, int mouseY, float delta, CallbackInfo ci) {
|
|
if (PlatformFunctions.getPlatformName().equals("neoforge")) Blur.onRender();
|
|
}
|
|
}
|