diff options
author | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2023-12-21 15:34:45 +0800 |
---|---|---|
committer | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2023-12-21 15:34:45 +0800 |
commit | 229a3c50e8febdd0d2994ab9d462604f9f523056 (patch) | |
tree | 2c3c670d0f8c7863b34db2e4ba29e229c348b6ff /src/main | |
parent | 003834e36b145791dd603858c924926be70e1281 (diff) | |
download | Skyblocker-229a3c50e8febdd0d2994ab9d462604f9f523056.tar.gz Skyblocker-229a3c50e8febdd0d2994ab9d462604f9f523056.tar.bz2 Skyblocker-229a3c50e8febdd0d2994ab9d462604f9f523056.zip |
Fix fairy room door highlight
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonManager.java | 6 | ||||
-rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java | 10 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonManager.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonManager.java index 722ecd85..70a0fd8c 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonManager.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonManager.java @@ -215,7 +215,7 @@ public class DungeonManager { return null; }); ClientLifecycleEvents.CLIENT_STOPPING.register(DungeonManager::saveCustomWaypoints); - Scheduler.INSTANCE.scheduleCyclic(DungeonManager::update, 10); + Scheduler.INSTANCE.scheduleCyclic(DungeonManager::update, 5); WorldRenderEvents.AFTER_TRANSLUCENT.register(DungeonManager::render); ClientReceiveMessageEvents.GAME.register(DungeonManager::onChatMessage); ClientReceiveMessageEvents.GAME_CANCELED.register(DungeonManager::onChatMessage); @@ -554,6 +554,10 @@ public class DungeonManager { } } if (room != null && currentRoom != room) { + if (currentRoom != null && room.getType() == Room.Type.FAIRY) { + currentRoom.nextRoom = room; + room.keyFound = currentRoom.keyFound; + } currentRoom = room; } currentRoom.tick(); diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java index d59bf7bf..4857e8fe 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java @@ -99,11 +99,16 @@ public class Room implements Tickable, Renderable { protected List<Tickable> tickables = new ArrayList<>(); protected List<Renderable> renderables = new ArrayList<>(); + /** + * Stores the next room in the dungeon. Currently only used if the next room is the fairy room. + */ + @Nullable + protected Room nextRoom; @Nullable private BlockPos doorPos; @Nullable private Box doorBox; - private boolean keyFound; + protected boolean keyFound; public Room(@NotNull Type type, @NotNull Vector2ic... physicalPositions) { this.type = type; @@ -633,6 +638,9 @@ public class Room implements Tickable, Renderable { } protected void keyFound() { + if (nextRoom != null && nextRoom.type == Type.FAIRY) { + nextRoom.keyFound = true; + } keyFound = true; } |