aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/features/combat/SpidersDenAPI.kt
blob: 8b9ff035e6627864f8a98d05c9373b7c6d47686b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package at.hannibal2.skyhanni.features.combat

import at.hannibal2.skyhanni.data.IslandType
import at.hannibal2.skyhanni.data.ScoreboardData
import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.LorenzUtils.isInIsland
import at.hannibal2.skyhanni.utils.RegexUtils.anyMatches
import at.hannibal2.skyhanni.utils.repopatterns.RepoPattern

@SkyHanniModule
object SpidersDenAPI {

    private val repoGroup = RepoPattern.group("combat.spidersden")

    /**
     * REGEX-TEST: §4Broodmother§7: §6Soon
     */
    val broodmotherPattern by repoGroup.pattern(
        "broodmother",
        "§4Broodmother§7: §[e64](?:Slain|Dormant|Soon|Awakening|Imminent|Alive!)",
    )

    fun inSpidersDen() = IslandType.SPIDER_DEN.isInIsland()

    fun isAtTopOfNest() = inSpidersDen() && broodmotherPattern.anyMatches(ScoreboardData.sidebarLinesFormatted)
}