From 89039bbfbc4d186e97c1fee6eb809d75b4e4bd3a Mon Sep 17 00:00:00 2001 From: Kevin <92656833+kevinthegreat1@users.noreply.github.com> Date: Fri, 19 Apr 2024 18:06:46 -0400 Subject: Prevent teammates glow during Livid (#652) Add DungeonBoss and prevent teammates glow during Livid --- .../skyblocker/skyblock/dungeon/DungeonBoss.java | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonBoss.java (limited to 'src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonBoss.java') diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonBoss.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonBoss.java new file mode 100644 index 00000000..2c26959a --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonBoss.java @@ -0,0 +1,47 @@ +package de.hysky.skyblocker.skyblock.dungeon; + +import java.util.Arrays; +import java.util.Map; +import java.util.function.Function; +import java.util.stream.Collectors; + +public enum DungeonBoss { + NONE(-1, ""), + BONZO(1, "[BOSS] Bonzo: Gratz for making it this far, but I'm basically unbeatable."), + SCARF(2, "[BOSS] Scarf: This is where the journey ends for you, Adventurers."), + PROFESSOR(3, "[BOSS] The Professor: I was burdened with terrible news recently..."), + THORN(4, "[BOSS] Thorn: Welcome Adventurers! I am Thorn, the Spirit! And host of the Vegan Trials!"), + LIVID(5, "[BOSS] Livid: Welcome, you've arrived right on time. I am Livid, the Master of Shadows."), + SADAN(6, "[BOSS] Sadan: So you made it all the way here... Now you wish to defy me? Sadan?!"), + MAXOR(7, "[BOSS] Maxor: WELL! WELL! WELL! LOOK WHO'S HERE!"); + + private static final Map BOSSES = Arrays.stream(values()).collect(Collectors.toUnmodifiableMap(DungeonBoss::message, Function.identity())); + + private final int floor; + private final String message; + + DungeonBoss(int floor, String message) { + this.floor = floor; + this.message = message; + } + + public int floor() { + return floor; + } + + public String message() { + return message; + } + + public boolean isInBoss() { + return this != NONE; + } + + public boolean isFloor(int floor) { + return this.floor == floor; + } + + public static DungeonBoss fromMessage(String message) { + return BOSSES.getOrDefault(message, NONE); + } +} -- cgit