aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/at/hannibal2/skyhanni/config/features/Misc.java4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt10
-rw-r--r--src/main/java/at/hannibal2/skyhanni/damageindicator/BossFinder.kt26
-rw-r--r--src/main/java/at/hannibal2/skyhanni/damageindicator/BossType.kt29
4 files changed, 47 insertions, 22 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/Misc.java b/src/main/java/at/hannibal2/skyhanni/config/features/Misc.java
index 6614c6f6c..03495f695 100644
--- a/src/main/java/at/hannibal2/skyhanni/config/features/Misc.java
+++ b/src/main/java/at/hannibal2/skyhanni/config/features/Misc.java
@@ -48,7 +48,7 @@ public class Misc {
"\u00a7bEnder Dragon (not finished)",
"\u00a7bRevenant Horror",
"\u00a7bTarantula Broodfather",
- "\u00a7bWolf Slayer (not implemented)",
+ "\u00a7bSven Packmaster",
"\u00a7bVoidgloom Seraph",
"\u00a7bInferno Demonlord (only tier 1 yet)",
"\u00a7bHeadless Horseman (bugged)",
@@ -63,7 +63,7 @@ public class Misc {
)
@ConfigAccordionId(id = 1)
//TODO only show currently working and tested features
- public List<Integer> damageIndicatorBossesToShow = new ArrayList<>(Arrays.asList(0, 1, 2, 5, 6, 8, 9));
+ public List<Integer> damageIndicatorBossesToShow = new ArrayList<>(Arrays.asList(0, 1, 2, 5, 6, 7, 8, 9));
@Expose
diff --git a/src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt b/src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt
index 0c9279b43..e5b6d1b28 100644
--- a/src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt
+++ b/src/main/java/at/hannibal2/skyhanni/damageindicator/BossDamageIndicator.kt
@@ -16,6 +16,7 @@ import net.minecraft.entity.EntityLivingBase
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
@@ -345,6 +346,15 @@ class BossDamageIndicator {
})
}
}
+ if (entityData.bossType == BossType.SLAYER_WOLF_3 ||
+ entityData.bossType == BossType.SLAYER_WOLF_4
+ ) {
+ if (entity is EntityWolf) {
+ if (entity.hasNameTagWith(2, "§bCalling the pups!")) {
+ customHealthText = "Pups!"
+ }
+ }
+ }
}
if (health == 0) {
diff --git a/src/main/java/at/hannibal2/skyhanni/damageindicator/BossFinder.kt b/src/main/java/at/hannibal2/skyhanni/damageindicator/BossFinder.kt
index 43544c776..37cb085d1 100644
--- a/src/main/java/at/hannibal2/skyhanni/damageindicator/BossFinder.kt
+++ b/src/main/java/at/hannibal2/skyhanni/damageindicator/BossFinder.kt
@@ -16,6 +16,7 @@ import net.minecraft.entity.boss.EntityWither
import net.minecraft.entity.item.EntityArmorStand
import net.minecraft.entity.monster.*
import net.minecraft.entity.passive.EntityHorse
+import net.minecraft.entity.passive.EntityWolf
import net.minecraft.util.AxisAlignedBB
import java.util.*
@@ -213,13 +214,11 @@ class BossFinder {
return EntityResult(bossType = BossType.NETHER_BARBARIAN_DUKE)
}
}
-
if (entity is EntityWither) {
if (entity.hasNameTagWith(4, "§8[§7Lv100§8] §c§5Vanquisher§r ")) {
return EntityResult(bossType = BossType.NETHER_VANQUISHER)
}
}
-
if (entity is EntityEnderman) {
if (entity.hasNameTagWith(3, "§c☠ §bVoidgloom Seraph ")) {
when (maxHealth) {
@@ -238,19 +237,16 @@ class BossFinder {
}
}
}
-
if (entity is EntityDragon) {
//TODO testing and make right and so
return EntityResult(bossType = BossType.END_ENDER_DRAGON)
}
-
if (entity is EntityIronGolem) {
//TODO testing
if (entity.hasNameTagWith(3, "§e﴾ §8[§7Lv100§8] §lEndstone Protector§r ")) {
return EntityResult(bossType = BossType.END_ENDSTONE_PROTECTOR, ignoreBlocks = true)
}
}
-
if (entity is EntityZombie) {
if (entity.hasNameTagWith(2, "§c☠ §bRevenant Horror")) {
when (maxHealth) {
@@ -285,7 +281,6 @@ class BossFinder {
}
}
}
-
if (entity is EntityHorse) {
if (entity.hasNameTagWith(15, "§8[§7Lv100§8] §c§6Headless Horseman§r ")) {
if (maxHealth == 3_000_000) {
@@ -306,7 +301,6 @@ class BossFinder {
}
}
}
-
if (entity is EntitySpider) {
if (entity.hasNameTagWith(1, "§5☠ §4Tarantula Broodfather ")) {
when (maxHealth) {
@@ -325,6 +319,24 @@ class BossFinder {
}
}
}
+ if (entity is EntityWolf) {
+ if (entity.hasNameTagWith(1, "§c☠ §fSven Packmaster ")) {
+ when (maxHealth) {
+ 2_000, 4_000 -> {
+ return EntityResult(bossType = BossType.SLAYER_WOLF_1)
+ }
+ 40_000, 80_000 -> {
+ return EntityResult(bossType = BossType.SLAYER_WOLF_2)
+ }
+ 750_000, 1_500_000 -> {
+ return EntityResult(bossType = BossType.SLAYER_WOLF_3)
+ }
+ 2_000_000, 4_000_000 -> {
+ return EntityResult(bossType = BossType.SLAYER_WOLF_4)
+ }
+ }
+ }
+ }
}
return null
diff --git a/src/main/java/at/hannibal2/skyhanni/damageindicator/BossType.kt b/src/main/java/at/hannibal2/skyhanni/damageindicator/BossType.kt
index 2ea336470..dc467cbb9 100644
--- a/src/main/java/at/hannibal2/skyhanni/damageindicator/BossType.kt
+++ b/src/main/java/at/hannibal2/skyhanni/damageindicator/BossType.kt
@@ -21,19 +21,22 @@ enum class BossType(val fullName: String, val bossTypeToggle: Int, val shortName
SLAYER_ZOMBIE_4("§4Revenant Horror 4", 5, "§4Rev 4"),
SLAYER_ZOMBIE_5("§5Revenant Horror 5", 5, "§5Rev 5"),
- SLAYER_SPIDER_1("§aTarantula Broodfather 1", 6),
- SLAYER_SPIDER_2("§eTarantula Broodfather 2", 6),
- SLAYER_SPIDER_3("§cTarantula Broodfather 3", 6),
- SLAYER_SPIDER_4("§4Tarantula Broodfather 4", 6),
-
- WOLF_SLAYER("Wolf Slayer", 7, "Wolf"),
-
- SLAYER_ENDERMAN_1("§aVoidgloom Seraph 1", 8),
- SLAYER_ENDERMAN_2("§eVoidgloom Seraph 2", 8),
- SLAYER_ENDERMAN_3("§cVoidgloom Seraph 3", 8),
- SLAYER_ENDERMAN_4("§4Voidgloom Seraph 4", 8),
-
- SLAYER_BLAZE_1("§aInferno Demonlord 1", 9),
+ SLAYER_SPIDER_1("§aTarantula Broodfather 1", 6, "§aTara 1"),
+ SLAYER_SPIDER_2("§eTarantula Broodfather 2", 6, "§eTara 2"),
+ SLAYER_SPIDER_3("§cTarantula Broodfather 3", 6, "§cTara 3"),
+ SLAYER_SPIDER_4("§4Tarantula Broodfather 4", 6, "§4Tara 4"),
+
+ SLAYER_WOLF_1("§aSven Packmaster 1", 7, "§aSven 1"),
+ SLAYER_WOLF_2("§eSven Packmaster 2", 7, "§eSven 2"),
+ SLAYER_WOLF_3("§cSven Packmaster 3", 7, "§cSven 3"),
+ SLAYER_WOLF_4("§4Sven Packmaster 4", 7, "§4Sven 4"),
+
+ SLAYER_ENDERMAN_1("§aVoidgloom Seraph 1", 8, "§aVoid 1"),
+ SLAYER_ENDERMAN_2("§eVoidgloom Seraph 2", 8, "§eVoid 2"),
+ SLAYER_ENDERMAN_3("§cVoidgloom Seraph 3", 8, "§cVoid 3"),
+ SLAYER_ENDERMAN_4("§4Voidgloom Seraph 4", 8, "§4Void 4"),
+
+ SLAYER_BLAZE_1("§aInferno Demonlord 1", 9, "§aInferno 1"),
HUB_HEADLESS_HORSEMAN("§6Headless Horseman", 10),