aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/skyblock/events/EventNotifications.java
diff options
context:
space:
mode:
authorKevin <92656833+kevinthegreat1@users.noreply.github.com>2024-06-15 00:15:41 +0800
committerGitHub <noreply@github.com>2024-06-14 12:15:41 -0400
commitf5871d8a18e0be2a3a4538fc0ab4f51f58cef3b3 (patch)
tree718829adf4b09a6482f0f1b63567d4df3bae968b /src/main/java/de/hysky/skyblocker/skyblock/events/EventNotifications.java
parent7b288fbfccb93ed8a10242acf6532127c41f6dfb (diff)
downloadSkyblocker-f5871d8a18e0be2a3a4538fc0ab4f51f58cef3b3.tar.gz
Skyblocker-f5871d8a18e0be2a3a4538fc0ab4f51f58cef3b3.tar.bz2
Skyblocker-f5871d8a18e0be2a3a4538fc0ab4f51f58cef3b3.zip
Add event notifications criterion (#763)
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/skyblock/events/EventNotifications.java')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/events/EventNotifications.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/events/EventNotifications.java b/src/main/java/de/hysky/skyblocker/skyblock/events/EventNotifications.java
index 0fd41969..da2a0c2f 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/events/EventNotifications.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/events/EventNotifications.java
@@ -10,6 +10,7 @@ import de.hysky.skyblocker.SkyblockerMod;
import de.hysky.skyblocker.config.SkyblockerConfigManager;
import de.hysky.skyblocker.events.SkyblockEvents;
import de.hysky.skyblocker.utils.Http;
+import de.hysky.skyblocker.utils.Utils;
import de.hysky.skyblocker.utils.scheduler.Scheduler;
import it.unimi.dsi.fastutil.ints.IntList;
import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
@@ -23,7 +24,10 @@ import net.minecraft.sound.SoundEvent;
import org.jetbrains.annotations.Nullable;
import org.slf4j.Logger;
-import java.util.*;
+import java.util.Comparator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
import java.util.concurrent.CompletableFuture;
public class EventNotifications {
@@ -140,7 +144,7 @@ public class EventNotifications {
if (reminderTimes.isEmpty()) continue;
for (Integer reminderTime : reminderTimes) {
- if (currentTime + reminderTime < skyblockEvent.start() && newTime + reminderTime >= skyblockEvent.start()) {
+ if (criterionMet() && currentTime + reminderTime < skyblockEvent.start() && newTime + reminderTime >= skyblockEvent.start()) {
MinecraftClient instance = MinecraftClient.getInstance();
if (eventName.equals(JACOBS)) {
instance.getToastManager().add(
@@ -161,6 +165,15 @@ public class EventNotifications {
currentTime = newTime;
}
+ private static boolean criterionMet() {
+ return switch (SkyblockerConfigManager.get().eventNotifications.criterion) {
+ case NONE -> false;
+ case SKYBLOCK -> Utils.isOnSkyblock();
+ case HYPIXEL -> Utils.isOnHypixel();
+ case EVERYWHERE -> true;
+ };
+ }
+
public record SkyblockEvent(long start, int duration, String[] extras, @Nullable String warpCommand) {
public static SkyblockEvent of(JsonObject jsonObject) {
String location = jsonObject.get("location").getAsString();