Adjusted Shader effects and added IdentityHider
This commit is contained in:
@@ -4,4 +4,5 @@ public class ClientData {
|
||||
public static float SANITY = 80f;
|
||||
public static float INSANITY = 0f;
|
||||
public static int TEMPO = 0;
|
||||
public static boolean IDENTITY_BLIND = false;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
package net.fretux.mindmotion.client;
|
||||
|
||||
import net.minecraft.client.model.HumanoidModel;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.client.event.RenderLivingEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = "mindmotion", value = Dist.CLIENT)
|
||||
public class IdentityBlindnessFaceHider {
|
||||
|
||||
@SubscribeEvent
|
||||
public static void hideFaces(RenderLivingEvent.Pre<?, ?> event) {
|
||||
if (!ClientData.IDENTITY_BLIND) return;
|
||||
if (event.getRenderer().getModel() instanceof HumanoidModel<?> model) {
|
||||
model.setAllVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void restoreFaces(RenderLivingEvent.Post<?, ?> event) {
|
||||
if (event.getRenderer().getModel() instanceof HumanoidModel<?> model) {
|
||||
model.head.visible = true;
|
||||
model.hat.visible = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package net.fretux.mindmotion.client;
|
||||
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.client.event.RenderNameTagEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = "mindmotion", value = Dist.CLIENT)
|
||||
public class IdentityBlindnessRenderer {
|
||||
|
||||
@SubscribeEvent
|
||||
public static void hideNameTags(RenderNameTagEvent event) {
|
||||
if (ClientData.IDENTITY_BLIND) {
|
||||
event.setResult(RenderNameTagEvent.Result.DENY);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -90,10 +90,32 @@ public class SanityShaderHandler {
|
||||
for (PostPass pass : getPasses(chain)) {
|
||||
EffectInstance effect = pass.getEffect();
|
||||
if (effect == null) continue;
|
||||
var uniform = effect.getUniform("Desat");
|
||||
if (uniform != null) {
|
||||
uniform.set(currentStrength);
|
||||
var uDesat = effect.getUniform("Desat");
|
||||
if (uDesat != null) uDesat.set(currentStrength);
|
||||
float blur = 0f;
|
||||
float vig = 0f;
|
||||
float fog = 0f;
|
||||
|
||||
if (sanityPct < 0.5f) {
|
||||
blur = (0.5f - sanityPct) * 0.6f;
|
||||
vig = (0.5f - sanityPct) * 0.4f;
|
||||
fog = (0.5f - sanityPct) * 0.25f;
|
||||
}
|
||||
blur += insanityPct * 0.25f;
|
||||
vig += insanityPct * 0.35f;
|
||||
fog += insanityPct * 0.35f;
|
||||
blur = Math.min(blur, 1f);
|
||||
vig = Math.min(vig, 1f);
|
||||
fog = Math.min(fog, 1f);
|
||||
|
||||
var uBlur = effect.getUniform("BlurAmount");
|
||||
if (uBlur != null) uBlur.set(blur);
|
||||
|
||||
var uVig = effect.getUniform("Vignette");
|
||||
if (uVig != null) uVig.set(vig);
|
||||
|
||||
var uFog = effect.getUniform("FogStrength");
|
||||
if (uFog != null) uFog.set(fog);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
|
||||
Reference in New Issue
Block a user