diff options
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), |