aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorhannibal2 <24389977+hannibal00212@users.noreply.github.com>2024-01-24 20:21:32 +0100
committerhannibal2 <24389977+hannibal00212@users.noreply.github.com>2024-01-24 20:21:32 +0100
commit44401050fc2ad9865f11f86082163e404de9fffc (patch)
tree3314aa71c70d7210e6825fc7372fdd396ea269c2 /src/main/java
parentd9ea69213d1baae2e77324f6eaf47df4590ed616 (diff)
downloadskyhanni-44401050fc2ad9865f11f86082163e404de9fffc.tar.gz
skyhanni-44401050fc2ad9865f11f86082163e404de9fffc.tar.bz2
skyhanni-44401050fc2ad9865f11f86082163e404de9fffc.zip
Added exact names for the floor 6 giants in Damage Indicator.
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/BossType.kt5
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/MobFinder.kt37
2 files changed, 25 insertions, 17 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/BossType.kt b/src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/BossType.kt
index 4f5145a79..8f419f803 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/BossType.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/BossType.kt
@@ -81,7 +81,10 @@ enum class BossType(
DUNGEON_F5("§dLivid", Type.DUNGEON_FLOOR_5),
- DUNGEON_F6_GIANT("§eGiant", Type.DUNGEON_FLOOR_6),
+ DUNGEON_F6_GIANT_1("§eBoulder Tosser", Type.DUNGEON_FLOOR_6, "§eGiant 1"),
+ DUNGEON_F6_GIANT_2("§eSword Thrower", Type.DUNGEON_FLOOR_6, "§eGiant 2"),
+ DUNGEON_F6_GIANT_3("§eBigfoot Jumper", Type.DUNGEON_FLOOR_6, "§eGiant 3"),
+ DUNGEON_F6_GIANT_4("§eLazer Shooter", Type.DUNGEON_FLOOR_6, "§eGiant 4"),
DUNGEON_F6_SADAN("§cSadan", Type.DUNGEON_FLOOR_6),
// TODO implement
diff --git a/src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/MobFinder.kt b/src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/MobFinder.kt
index 5da9dbc0f..3bc048aa0 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/MobFinder.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/combat/damageindicator/MobFinder.kt
@@ -78,7 +78,7 @@ class MobFinder {
//F6
private var floor6Giants = false
private var floor6GiantsSpawnTime = 0L
- private var floor6GiantsSeparateDelay = mutableMapOf<UUID, Long>()
+ private var floor6GiantsSeparateDelay = mutableMapOf<UUID, Pair<Long, BossType>>()
private var floor6Sadan = false
private var floor6SadanSpawnTime = 0L
@@ -236,11 +236,11 @@ class MobFinder {
private fun tryAddDungeonF6(entity: EntityLivingBase): EntityResult? {
if (entity !is EntityGiantZombie || entity.isInvisible) return null
if (floor6Giants && entity.posY > 68) {
- val extraDelay = checkExtraF6GiantsDelay(entity)
+ val (extraDelay, bossType) = checkExtraF6GiantsDelay(entity)
return EntityResult(
floor6GiantsSpawnTime + extraDelay,
floor6GiantsSpawnTime + extraDelay + 1_000 > System.currentTimeMillis(),
- bossType = BossType.DUNGEON_F6_GIANT
+ bossType = bossType
)
}
@@ -469,7 +469,7 @@ class MobFinder {
EntityResult(bossType = BossType.THUNDER)
} else null
- private fun checkExtraF6GiantsDelay(entity: EntityGiantZombie): Long {
+ private fun checkExtraF6GiantsDelay(entity: EntityGiantZombie): Pair<Long, BossType> {
val uuid = entity.uniqueID
if (floor6GiantsSeparateDelay.contains(uuid)) {
@@ -482,30 +482,35 @@ class MobFinder {
var pos = 0
- //first
+
+ val type: BossType
if (loc.x > middle.x && loc.z > middle.z) {
+ //first
pos = 2
- }
-
+ type = BossType.DUNGEON_F6_GIANT_3
+ } else if (loc.x > middle.x && loc.z < middle.z) {
//second
- if (loc.x > middle.x && loc.z < middle.z) {
pos = 3
- }
-
+ type = BossType.DUNGEON_F6_GIANT_4
+ } else if (loc.x < middle.x && loc.z < middle.z) {
//third
- if (loc.x < middle.x && loc.z < middle.z) {
pos = 0
- }
-
+ type = BossType.DUNGEON_F6_GIANT_1
+ } else if (loc.x < middle.x && loc.z > middle.z) {
//fourth
- if (loc.x < middle.x && loc.z > middle.z) {
pos = 1
+ type = BossType.DUNGEON_F6_GIANT_2
+ } else {
+ pos = 0
+ type = BossType.DUNGEON_F6_GIANT_1
}
+
val extraDelay = 900L * pos
- floor6GiantsSeparateDelay[uuid] = extraDelay
+ val pair = Pair(extraDelay, type)
+ floor6GiantsSeparateDelay[uuid] = pair
- return extraDelay
+ return pair
}
fun handleChat(message: String) {