Compare commits
5 Commits
v1.0-1.15-
...
v1.1.1-1.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0aa3ff4266 | ||
|
|
7bbb03736d | ||
|
|
c5c62a0675 | ||
|
|
a357b924d8 | ||
|
|
3c2e6baa0c |
@@ -10,6 +10,6 @@ forge_version=29.0.4
|
||||
|
||||
|
||||
# Mod Properties
|
||||
mod_version = 1.0
|
||||
mod_version = 1.1.1
|
||||
maven_group = markil3
|
||||
archives_base_name = immersive_hud
|
||||
@@ -3,6 +3,7 @@ package markil3.immersive_hud;
|
||||
import com.electronwill.nightconfig.core.file.CommentedFileConfig;
|
||||
import com.electronwill.nightconfig.core.io.WritingMode;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraftforge.common.ForgeConfigSpec;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
@@ -50,7 +51,7 @@ public class ConfigManager
|
||||
new ForgeConfigSpec.Builder().configure(ConfigManager::new);
|
||||
INSTANCE = specPair.getLeft();
|
||||
SPEC = specPair.getRight();
|
||||
CommentedFileConfig config = CommentedFileConfig.builder(CONFIG_PATH)
|
||||
CommentedFileConfig config = CommentedFileConfig.builder(Minecraft.getInstance().gameDir.toPath().toAbsolutePath().resolve(CONFIG_PATH))
|
||||
.sync()
|
||||
.autoreload()
|
||||
.writingMode(WritingMode.REPLACE)
|
||||
@@ -155,7 +156,9 @@ public class ConfigManager
|
||||
private final TimeValues hungerTime;
|
||||
private final TimeValues effectTime;
|
||||
private final ForgeConfigSpec.IntValue crosshairTime;
|
||||
private final ForgeConfigSpec.BooleanValue hideCrosshair;
|
||||
private final ForgeConfigSpec.IntValue handTime;
|
||||
private final ForgeConfigSpec.BooleanValue hideHands;
|
||||
private final ForgeConfigSpec.BooleanValue showArmor;
|
||||
private final ForgeConfigSpec.DoubleValue minHealth;
|
||||
private final ForgeConfigSpec.IntValue minHunger;
|
||||
@@ -182,6 +185,10 @@ public class ConfigManager
|
||||
6 * TICKS_PER_SECOND,
|
||||
0,
|
||||
10 * 60 * TICKS_PER_SECOND);
|
||||
this.hideCrosshair =
|
||||
configSpecBuilder.translation(
|
||||
"immersive_hud.configGui.hideCrosshair.title")
|
||||
.define("hideCrosshair", true);
|
||||
this.handTime =
|
||||
configSpecBuilder.translation(
|
||||
"immersive_hud.configGui.handTime.title")
|
||||
@@ -189,6 +196,10 @@ public class ConfigManager
|
||||
30 * TICKS_PER_SECOND,
|
||||
0,
|
||||
10 * 60 * TICKS_PER_SECOND);
|
||||
this.hideHands =
|
||||
configSpecBuilder.translation(
|
||||
"immersive_hud.configGui.hideHands.title")
|
||||
.define("hideHands", true);
|
||||
this.showArmor = configSpecBuilder.translation(
|
||||
"immersive_hud.configGui.showArmor.title")
|
||||
.define("showArmor", true);
|
||||
@@ -282,6 +293,16 @@ public class ConfigManager
|
||||
return this.crosshairTime.get();
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks whether the crosshairs should be hidden after a period of time.
|
||||
*
|
||||
* @return - Whether or not crosshairs will be hidden.
|
||||
*/
|
||||
public boolean hideCrosshair()
|
||||
{
|
||||
return this.hideCrosshair.get();
|
||||
}
|
||||
|
||||
/**
|
||||
* Obtains the time that the hands are allowed to display.
|
||||
*
|
||||
@@ -292,6 +313,16 @@ public class ConfigManager
|
||||
return this.handTime.get();
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks whether hands should be hidden after a period of time.
|
||||
*
|
||||
* @return - Whether or not hands will be hidden.
|
||||
*/
|
||||
public boolean hideHands()
|
||||
{
|
||||
return this.hideHands.get();
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks whether the armor bar should render.
|
||||
*
|
||||
@@ -334,6 +365,16 @@ public class ConfigManager
|
||||
this.crosshairTime.set(time);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets whether the crosshairs should be hidden after a period of time.
|
||||
*
|
||||
* @param hide - Whether or not crosshairs will be hidden.
|
||||
*/
|
||||
public void hideCrosshair(boolean hide)
|
||||
{
|
||||
this.hideCrosshair.set(hide);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the time that the hands are allowed to display.
|
||||
*
|
||||
@@ -344,6 +385,16 @@ public class ConfigManager
|
||||
this.handTime.set(time);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets whether hands should be hidden after a period of time.
|
||||
*
|
||||
* @param hide - Whether or not hands will be hidden.
|
||||
*/
|
||||
public void hideHands(boolean hide)
|
||||
{
|
||||
this.hideHands.set(hide);
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines whether the armor bar should render.
|
||||
*
|
||||
|
||||
@@ -23,7 +23,6 @@ import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.client.event.RenderGameOverlayEvent;
|
||||
import net.minecraftforge.client.event.RenderHandEvent;
|
||||
import net.minecraftforge.client.event.RenderSpecificHandEvent;
|
||||
import net.minecraftforge.event.entity.EntityMountEvent;
|
||||
import net.minecraftforge.event.entity.player.PlayerInteractEvent;
|
||||
@@ -61,6 +60,8 @@ public class EventBus
|
||||
*/
|
||||
@SubscribeEvent
|
||||
public static void onClick(final PlayerInteractEvent event)
|
||||
{
|
||||
try
|
||||
{
|
||||
DistExecutor.runWhenOn(Dist.CLIENT, () -> () ->
|
||||
{
|
||||
@@ -71,6 +72,14 @@ public class EventBus
|
||||
TimerUtils.onClick(event.getHand(), item);
|
||||
});
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.error(
|
||||
"Error in running markil3.immersive_hud.EventBus#onClick " +
|
||||
"event",
|
||||
e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Run whenever the player mounts something. This brings the mount's health
|
||||
@@ -83,12 +92,22 @@ public class EventBus
|
||||
*/
|
||||
@SubscribeEvent
|
||||
public static void onMount(final EntityMountEvent event)
|
||||
{
|
||||
try
|
||||
{
|
||||
DistExecutor.runWhenOn(Dist.CLIENT, () -> () ->
|
||||
{
|
||||
TimerUtils.resetMountHealth();
|
||||
});
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.error(
|
||||
"Error in running markil3.immersive_hud.EventBus#onMount " +
|
||||
"event",
|
||||
e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Run whenever a hand is rendered in 1st person. This brings the player
|
||||
@@ -98,6 +117,8 @@ public class EventBus
|
||||
*/
|
||||
@SubscribeEvent
|
||||
public static void onRenderHand(final RenderSpecificHandEvent event)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (TimerUtils.onRenderHand(event.getHand(),
|
||||
event.getMatrixStack(),
|
||||
@@ -106,6 +127,14 @@ public class EventBus
|
||||
event.setCanceled(true);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.error(
|
||||
"Error in running markil3.immersive_hud" +
|
||||
".EventBus#onRenderHand event",
|
||||
e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Called whenever we are drawing a part of the GUI. This is where most of
|
||||
@@ -115,6 +144,8 @@ public class EventBus
|
||||
*/
|
||||
@SubscribeEvent
|
||||
public static void onGUIDraw(final RenderGameOverlayEvent event)
|
||||
{
|
||||
try
|
||||
{
|
||||
Minecraft mc = Minecraft.getInstance();
|
||||
boolean fadeIn = false;
|
||||
@@ -265,4 +296,11 @@ public class EventBus
|
||||
break;
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.error(
|
||||
"Error in running markil3.immersive_hud.EventBus#onGUIDraw event",
|
||||
e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,7 +24,6 @@ import net.minecraft.potion.Effect;
|
||||
import net.minecraft.potion.EffectInstance;
|
||||
import net.minecraft.potion.Effects;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.Util;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraft.util.math.RayTraceResult;
|
||||
|
||||
@@ -297,6 +296,10 @@ public class TimerUtils
|
||||
{
|
||||
float HAND_UP_TIME = 20F;
|
||||
|
||||
boolean hideHands =
|
||||
ConfigManager.getInstance().hideHands();
|
||||
if (hideHands)
|
||||
{
|
||||
switch (hand)
|
||||
{
|
||||
case OFF_HAND:
|
||||
@@ -349,6 +352,7 @@ public class TimerUtils
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -383,6 +387,10 @@ public class TimerUtils
|
||||
boolean changed = false;
|
||||
boolean canceled = false;
|
||||
|
||||
boolean hideCrosshair =
|
||||
ConfigManager.getInstance().hideCrosshair();
|
||||
if (hideCrosshair)
|
||||
{
|
||||
if (mc.objectMouseOver != null && mc.objectMouseOver.getType() != RayTraceResult.Type.MISS)
|
||||
{
|
||||
if (mc.objectMouseOver.getType() == RayTraceResult.Type.ENTITY)
|
||||
@@ -412,6 +420,7 @@ public class TimerUtils
|
||||
{
|
||||
crosshairTime -= ticks;
|
||||
}
|
||||
}
|
||||
|
||||
return canceled;
|
||||
}
|
||||
@@ -474,7 +483,8 @@ public class TimerUtils
|
||||
}
|
||||
else if (effectinstance.getDuration() <= BLINK_TIME + potion.getFadeInTime())
|
||||
{
|
||||
effectAlpha = -(effectinstance.getDuration() - BLINK_TIME) / 22F + 0.454F;
|
||||
effectAlpha =
|
||||
-(effectinstance.getDuration() - BLINK_TIME) / 22F + 0.454F;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -757,7 +767,8 @@ public class TimerUtils
|
||||
* Only makes a change if the player is healthy. Otherwise,
|
||||
* the bar is shown.
|
||||
*/
|
||||
if (health / maxHealth > HEALTH_BOUNDARY && !mc.player.isPotionActive(Effects.WITHER) && !mc.player.isPotionActive(Effects.POISON))
|
||||
if (health / maxHealth > HEALTH_BOUNDARY && !mc.player.isPotionActive(
|
||||
Effects.WITHER) && !mc.player.isPotionActive(Effects.POISON))
|
||||
{
|
||||
if (healthTime > 0)
|
||||
{
|
||||
@@ -926,7 +937,7 @@ public class TimerUtils
|
||||
Entity tmp = mc.player.getRidingEntity();
|
||||
boolean changed = false;
|
||||
|
||||
if (tmp == null)
|
||||
if (tmp == null || !(tmp instanceof LivingEntity))
|
||||
{
|
||||
mountHealth = -1;
|
||||
mountMaxHealth = -1;
|
||||
|
||||
@@ -19,7 +19,9 @@
|
||||
"option.immersive_hud.effectFadeIn": "Potion Fade In Time",
|
||||
"option.immersive_hud.effectFadeOut": "Potion Fade Out Time",
|
||||
"option.immersive_hud.crosshairTime": "Crosshair Display Time",
|
||||
"option.immersive_hud.hideCrosshair": "Hide Crosshair",
|
||||
"option.immersive_hud.handTime": "Hand Display Time",
|
||||
"option.immersive_hud.hideHands": "Hide Hands",
|
||||
"option.immersive_hud.minHealth": "Minimum Health Fade",
|
||||
"option.immersive_hud.minHunger": "Minimum Hunger Fade",
|
||||
"option.immersive_hud.showArmor": "Show Armor",
|
||||
@@ -42,7 +44,9 @@
|
||||
"tooltip.immersive_hud.effectFadeIn": "How many seconds it takes for potion icons to fade in",
|
||||
"tooltip.immersive_hud.effectFadeOut": "How many seconds it takes for potion icons to fade out",
|
||||
"tooltip.immersive_hud.crosshairTime": "How many seconds the crosshairs can be on screen",
|
||||
"tooltip.immersive_hud.hideCrosshair": "Whether or not the crosshairs should be hidden after a period of time",
|
||||
"tooltip.immersive_hud.handTime": "How many seconds the hands can be on screen",
|
||||
"tooltip.immersive_hud.hideHands": "Whether or not hands should be hidden after a period of time",
|
||||
"tooltip.immersive_hud.minHealth": "When the percentage of health goes below this level, the health bar won't fade away",
|
||||
"tooltip.immersive_hud.minHunger": "When the hunger level goes below this level, the hunger bar won't fade away",
|
||||
"tooltip.immersive_hud.showArmor": "Whether or not the armor bar should display on the HUD"
|
||||
|
||||
Reference in New Issue
Block a user