aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorJakub <53441451+kuba6000@users.noreply.github.com>2022-09-20 22:13:24 +0200
committerGitHub <noreply@github.com>2022-09-20 22:13:24 +0200
commit193d93fc3c9c808c6e22017ec742f50989b6c863 (patch)
treebe473852076034c847bfeb058191007c01b7c7db /src/main
parent199bf2233700b4cdb60f77c79b23b56b2551f01a (diff)
parente476c41e8956a61de6e1d962c9bb40948db8c2b5 (diff)
downloadGT5-Unofficial-193d93fc3c9c808c6e22017ec742f50989b6c863.tar.gz
GT5-Unofficial-193d93fc3c9c808c6e22017ec742f50989b6c863.tar.bz2
GT5-Unofficial-193d93fc3c9c808c6e22017ec742f50989b6c863.zip
Merge pull request #22 from GTNewHorizons/bugfix
Prevent the boss status bar from showing
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/kubatech/client/effect/EntityRenderer.java12
-rw-r--r--src/main/java/kubatech/nei/Mob_Handler.java24
-rw-r--r--src/main/resources/assets/kubatech/lang/en_US.lang1
3 files changed, 36 insertions, 1 deletions
diff --git a/src/main/java/kubatech/client/effect/EntityRenderer.java b/src/main/java/kubatech/client/effect/EntityRenderer.java
index 1e211b6491..b43979d1c2 100644
--- a/src/main/java/kubatech/client/effect/EntityRenderer.java
+++ b/src/main/java/kubatech/client/effect/EntityRenderer.java
@@ -14,6 +14,7 @@ import net.minecraft.client.renderer.RenderHelper;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.entity.EntityList;
import net.minecraft.entity.EntityLiving;
+import net.minecraft.entity.boss.BossStatus;
import net.minecraft.world.World;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -142,6 +143,12 @@ public class EntityRenderer extends EntityFX {
GL11.glEnable(GL12.GL_RESCALE_NORMAL);
float desiredScale = MobUtils.getDesiredScale(entityToRender, 2f);
if (desiredScale < 1f) GL11.glScalef(desiredScale, desiredScale, desiredScale);
+
+ float healthScale = BossStatus.healthScale;
+ int statusBarTime = BossStatus.statusBarTime;
+ String bossName = BossStatus.bossName;
+ boolean hasColorModifier = BossStatus.hasColorModifier;
+
try {
instance.renderEntityWithPosYaw(entityToRender, 0f, 0f, 0f, f1, p_147936_2_);
} catch (Throwable ex) {
@@ -152,6 +159,11 @@ public class EntityRenderer extends EntityFX {
}
}
+ BossStatus.healthScale = healthScale;
+ BossStatus.statusBarTime = statusBarTime;
+ BossStatus.bossName = bossName;
+ BossStatus.hasColorModifier = hasColorModifier;
+
GL11.glMatrixMode(GL11.GL_MODELVIEW_MATRIX);
stackdepth -= GL11.glGetInteger(GL11.GL_MODELVIEW_STACK_DEPTH);
if (stackdepth < 0) for (; stackdepth < 0; stackdepth++) GL11.glPopMatrix();
diff --git a/src/main/java/kubatech/nei/Mob_Handler.java b/src/main/java/kubatech/nei/Mob_Handler.java
index 31a0f6d8b8..bdfda0202f 100644
--- a/src/main/java/kubatech/nei/Mob_Handler.java
+++ b/src/main/java/kubatech/nei/Mob_Handler.java
@@ -55,6 +55,7 @@ import net.minecraft.client.renderer.entity.RendererLivingEntity;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.EntityList;
import net.minecraft.entity.EntityLiving;
+import net.minecraft.entity.boss.BossStatus;
import net.minecraft.entity.monster.EntitySkeleton;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
@@ -87,6 +88,7 @@ public class Mob_Handler extends TemplateRecipeHandler {
AVERAGE_REMINDER,
MOD,
MAX_HEALTH,
+ BOSS,
LOOTABLE,
PLAYER_ONLY,
;
@@ -289,6 +291,13 @@ public class Mob_Handler extends TemplateRecipeHandler {
GL11.glPushMatrix();
+ float healthScale = BossStatus.healthScale;
+ int statusBarTime = BossStatus.statusBarTime;
+ String bossName = BossStatus.bossName;
+ boolean hasColorModifier = BossStatus.hasColorModifier;
+
+ BossStatus.statusBarTime = 0;
+
try {
EntityLiving e = currentrecipe.mob;
@@ -300,6 +309,7 @@ public class Mob_Handler extends TemplateRecipeHandler {
int mobx = 30, moby = 50;
e.setPosition(mc.thePlayer.posX + 5, mc.thePlayer.posY, mc.thePlayer.posZ);
+
// ARGS: x, y, scale, rot, rot, entity
GuiInventory.func_147046_a(
mobx, moby, Math.round(scaled), (x + mobx) - mouseX, y + moby - eheight * scaled - mouseZ, e);
@@ -311,6 +321,13 @@ public class Mob_Handler extends TemplateRecipeHandler {
}
}
+ if (BossStatus.statusBarTime > 0 && currentrecipe.isBoss.isEmpty()) currentrecipe.isBoss = BossStatus.bossName;
+
+ BossStatus.healthScale = healthScale;
+ BossStatus.statusBarTime = statusBarTime;
+ BossStatus.bossName = bossName;
+ BossStatus.hasColorModifier = hasColorModifier;
+
GL11.glMatrixMode(GL11.GL_MODELVIEW_MATRIX);
stackdepth -= GL11.glGetInteger(GL11.GL_MODELVIEW_STACK_DEPTH);
if (stackdepth < 0) for (; stackdepth < 0; stackdepth++) GL11.glPopMatrix();
@@ -348,6 +365,10 @@ public class Mob_Handler extends TemplateRecipeHandler {
GuiDraw.drawString(INFERNAL_ALWAYS.get(), x, y += yshift, 0xFFFF0000, false);
break;
}
+
+ if (!currentrecipe.isBoss.isEmpty())
+ GuiDraw.drawString(EnumChatFormatting.BOLD + "" + BOSS.get(), x, y += yshift, 0xFFD68F00, false);
+
MobRecipeLoader.MobRecipe MBRecipe =
GT_MetaTileEntity_ExtremeExterminationChamber.MobNameToRecipeMap.get(currentrecipe.mobname);
if (MBRecipe != null) {
@@ -371,7 +392,7 @@ public class Mob_Handler extends TemplateRecipeHandler {
}
x = 6;
- y = 83;
+ y = Math.max(83, 83 + (y - 67));
yshift = nextRowYShift;
if (currentrecipe.normalOutputsCount > 0) {
GuiDraw.drawString(NORMAL_DROPS.get(), x, y, 0xFF555555, false);
@@ -531,6 +552,7 @@ public class Mob_Handler extends TemplateRecipeHandler {
public final int rareOutputsCount;
public final int additionalOutputsCount;
public final int infernalOutputsCount;
+ public String isBoss = "";
public MobCachedRecipe(
EntityLiving mob,
diff --git a/src/main/resources/assets/kubatech/lang/en_US.lang b/src/main/resources/assets/kubatech/lang/en_US.lang
index f501587cdf..46cb8b798b 100644
--- a/src/main/resources/assets/kubatech/lang/en_US.lang
+++ b/src/main/resources/assets/kubatech/lang/en_US.lang
@@ -10,6 +10,7 @@ mobhandler.infernal_can=Can spawn infernal
mobhandler.infernal_always=Always spawns infernal
mobhandler.mod=Mod:
mobhandler.max_health=Max health:
+mobhandler.boss=BOSS
mobhandler.cannot_use_vial=Can't be in soul vial
mobhandler.chance=Chance:
mobhandler.average_reminder=§7§oPlease remember that these are average drops.