Catches any errors that occur when triggering events.

It is pretty annoying for the game to crash because of a GUI mod. This should reduce that.
This commit is contained in:
Markil3
2021-03-26 09:27:07 -06:00
parent 5059774b34
commit 5e3b714190

View File

@@ -23,7 +23,6 @@ import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.client.event.RenderGameOverlayEvent; import net.minecraftforge.client.event.RenderGameOverlayEvent;
import net.minecraftforge.client.event.RenderHandEvent;
import net.minecraftforge.client.event.RenderSpecificHandEvent; import net.minecraftforge.client.event.RenderSpecificHandEvent;
import net.minecraftforge.event.entity.EntityMountEvent; import net.minecraftforge.event.entity.EntityMountEvent;
import net.minecraftforge.event.entity.player.PlayerInteractEvent; import net.minecraftforge.event.entity.player.PlayerInteractEvent;
@@ -61,6 +60,8 @@ public class EventBus
*/ */
@SubscribeEvent @SubscribeEvent
public static void onClick(final PlayerInteractEvent event) public static void onClick(final PlayerInteractEvent event)
{
try
{ {
DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> DistExecutor.runWhenOn(Dist.CLIENT, () -> () ->
{ {
@@ -71,6 +72,14 @@ public class EventBus
TimerUtils.onClick(event.getHand(), item); 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 * Run whenever the player mounts something. This brings the mount's health
@@ -83,12 +92,22 @@ public class EventBus
*/ */
@SubscribeEvent @SubscribeEvent
public static void onMount(final EntityMountEvent event) public static void onMount(final EntityMountEvent event)
{
try
{ {
DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> DistExecutor.runWhenOn(Dist.CLIENT, () -> () ->
{ {
TimerUtils.resetMountHealth(); 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 * Run whenever a hand is rendered in 1st person. This brings the player
@@ -98,6 +117,8 @@ public class EventBus
*/ */
@SubscribeEvent @SubscribeEvent
public static void onRenderHand(final RenderSpecificHandEvent event) public static void onRenderHand(final RenderSpecificHandEvent event)
{
try
{ {
if (TimerUtils.onRenderHand(event.getHand(), if (TimerUtils.onRenderHand(event.getHand(),
event.getPartialTicks())) event.getPartialTicks()))
@@ -105,6 +126,14 @@ public class EventBus
event.setCanceled(true); 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 * Called whenever we are drawing a part of the GUI. This is where most of
@@ -114,6 +143,8 @@ public class EventBus
*/ */
@SubscribeEvent @SubscribeEvent
public static void onGUIDraw(final RenderGameOverlayEvent event) public static void onGUIDraw(final RenderGameOverlayEvent event)
{
try
{ {
Minecraft mc = Minecraft.getInstance(); Minecraft mc = Minecraft.getInstance();
boolean fadeIn = false; boolean fadeIn = false;
@@ -264,4 +295,11 @@ public class EventBus
break; break;
} }
} }
catch (Exception e)
{
LOGGER.error(
"Error in running markil3.immersive_hud.EventBus#onGUIDraw event",
e);
}
}
} }