diff options
| author | Lorenz <lo.scherf@gmail.com> | 2022-08-15 23:20:37 +0200 |
|---|---|---|
| committer | Lorenz <lo.scherf@gmail.com> | 2022-08-15 23:20:37 +0200 |
| commit | 679689ad55e2ff4fa73e026b202f1cd7d19ddfaf (patch) | |
| tree | e6bd55c4bf7ffe9b24523cdccc9e638f690b9aef /src/main/java/at/hannibal2/skyhanni/damageindicator | |
| parent | 00ddcea975b06bc5c6dd185698401a75ef3c39b0 (diff) | |
| download | skyhanni-679689ad55e2ff4fa73e026b202f1cd7d19ddfaf.tar.gz skyhanni-679689ad55e2ff4fa73e026b202f1cd7d19ddfaf.tar.bz2 skyhanni-679689ad55e2ff4fa73e026b202f1cd7d19ddfaf.zip | |
prevent death mobs from moving damage indicator bar
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/damageindicator')
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt | 36 | ||||
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/damageindicator/EntityData.kt | 4 |
2 files changed, 18 insertions, 22 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt b/src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt index e5b6d1b28..0841984d3 100644 --- a/src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt +++ b/src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt @@ -17,7 +17,6 @@ import net.minecraft.entity.monster.EntityEnderman import net.minecraft.entity.monster.EntityMagmaCube import net.minecraft.entity.monster.EntityZombie import net.minecraft.entity.passive.EntityWolf -import net.minecraft.util.Vec3 import net.minecraftforge.client.event.RenderWorldLastEvent import net.minecraftforge.event.entity.EntityJoinWorldEvent import net.minecraftforge.event.world.WorldEvent @@ -78,20 +77,21 @@ class BossDamageIndicator { } val partialTicks = event.partialTicks - val pos = Vec3( - RenderUtils.interpolate(entity.posX, entity.lastTickPosX, partialTicks), - RenderUtils.interpolate(entity.posY, entity.lastTickPosY, partialTicks) + 0.5f, - RenderUtils.interpolate(entity.posZ, entity.lastTickPosZ, partialTicks) - ) - if (!data.healthLineHidden) { - RenderUtils.drawLabel( - pos, - healthText, - partialTicks, - true, - 6f + val location = if (data.dead && data.deathLocation != null) { + data.deathLocation!! + } else { + val loc = LorenzVec( + RenderUtils.interpolate(entity.posX, entity.lastTickPosX, partialTicks), + RenderUtils.interpolate(entity.posY, entity.lastTickPosY, partialTicks) + 0.5f, + RenderUtils.interpolate(entity.posZ, entity.lastTickPosZ, partialTicks) ) + if (data.dead) data.deathLocation = loc + loc + } + + if (!data.healthLineHidden) { + RenderUtils.drawLabel(location, healthText, partialTicks, true, 6f) } var bossName = when (SkyHanniMod.feature.misc.damageIndicatorBossName) { @@ -108,14 +108,7 @@ class BossDamageIndicator { bossName += data.nameSuffix } - RenderUtils.drawLabel( - pos, - bossName, - partialTicks, - true, - 3.9f, - -9.0f - ) + RenderUtils.drawLabel(location, bossName, partialTicks, true, 3.9f, -9.0f) } GlStateManager.enableDepth() GlStateManager.enableCull() @@ -416,6 +409,7 @@ class BossDamageIndicator { else -> bossType.fullName } + //TODO fix rounding error (25+4=30) println(bossName + " §healed for $healed❤ ($lastHealth -> $health)") LorenzUtils.chat("$bossName §ehealed for §a$healedFormat❤ §8(§e$formatLastHealth -> $formatHealth§8)") } diff --git a/src/main/java/at/hannibal2/skyhanni/damageindicator/EntityData.kt b/src/main/java/at/hannibal2/skyhanni/damageindicator/EntityData.kt index fd44bfb02..2f2738095 100644 --- a/src/main/java/at/hannibal2/skyhanni/damageindicator/EntityData.kt +++ b/src/main/java/at/hannibal2/skyhanni/damageindicator/EntityData.kt @@ -1,5 +1,6 @@ package at.hannibal2.skyhanni.damageindicator +import at.hannibal2.skyhanni.utils.LorenzVec import net.minecraft.entity.EntityLivingBase class EntityData( @@ -15,5 +16,6 @@ class EntityData( var healthLineHidden: Boolean = false, var namePrefix: String = "", var nameSuffix: String = "", - var dead: Boolean = false + var dead: Boolean = false, + var deathLocation: LorenzVec? = null )
\ No newline at end of file |
