aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/kr/syeyoung/dungeonsguide/dungeon
diff options
context:
space:
mode:
authorsyeyoung <cyong06@naver.com>2021-02-20 01:23:37 +0900
committersyeyoung <cyong06@naver.com>2021-02-20 01:23:37 +0900
commit7c15d593f5f583fc819835f7c0265137beb9c270 (patch)
tree6361f6ae8292a64b79cb4c42bdcde7d781382178 /src/main/java/kr/syeyoung/dungeonsguide/dungeon
parent4ad16fc1d8b6c8ccb342e88c77a396131490657c (diff)
downloadSkyblock-Dungeons-Guide-7c15d593f5f583fc819835f7c0265137beb9c270.tar.gz
Skyblock-Dungeons-Guide-7c15d593f5f583fc819835f7c0265137beb9c270.tar.bz2
Skyblock-Dungeons-Guide-7c15d593f5f583fc819835f7c0265137beb9c270.zip
button solver, some tweaks
Diffstat (limited to 'src/main/java/kr/syeyoung/dungeonsguide/dungeon')
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/dungeon/DungeonContext.java13
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/CatacombDataProvider.java17
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/DungeonSpecificDataProvider.java2
3 files changed, 31 insertions, 1 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/DungeonContext.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/DungeonContext.java
index ee4ce4cc..6f162a5c 100755
--- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/DungeonContext.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/DungeonContext.java
@@ -58,6 +58,14 @@ public class DungeonContext {
@Getter
@Setter
+ private boolean trapRoomGen = false;
+
+ @Getter
+ @Setter
+ private boolean gotMimic = false;
+
+ @Getter
+ @Setter
private BossfightProcessor bossfightProcessor;
@Getter
@@ -66,7 +74,8 @@ public class DungeonContext {
public DungeonContext(World world) {
this.world = world;
mapProcessor = new MapProcessor(this);
-
+ DungeonSpecificDataProvider doorFinder = DungeonSpecificDataProviderRegistry.getDoorFinder(((SkyblockStatus) e.getDungeonsGuide().getSkyblockStatus()).getDungeonName());
+ trapRoomGen = doorFinder.isTrapSpawn(e.getDungeonsGuide().getSkyblockStatus().getDungeonName());
}
@@ -115,6 +124,8 @@ public class DungeonContext {
if (dr != null) {
dr.setTotalSecrets(secrets2);
}
+ } else if (component.getFormattedText().contains("$DG-Mimic")) {
+ gotMimic = true;
}
}
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/CatacombDataProvider.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/CatacombDataProvider.java
index d39418bd..0c874458 100755
--- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/CatacombDataProvider.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/CatacombDataProvider.java
@@ -92,4 +92,21 @@ public class CatacombDataProvider implements DungeonSpecificDataProvider {
}
return null;
}
+
+ @Override
+ public boolean isTrapSpawn(String dungeonName) {
+ String floor = dungeonName.substring(14).trim();
+ if (floor.equals("F3")) {
+ return true;
+ } else if (floor.equals("F4")) {
+ return true;
+ } else if (floor.equals("F5")) {
+ return true;
+ } else if (floor.equals("F6")) {
+ return true;
+ } else if (floor.equals("F7")) {
+ return true;
+ }
+ return false;
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/DungeonSpecificDataProvider.java b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/DungeonSpecificDataProvider.java
index 3103adf0..4cc0e677 100755
--- a/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/DungeonSpecificDataProvider.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/dungeon/doorfinder/DungeonSpecificDataProvider.java
@@ -12,4 +12,6 @@ public interface DungeonSpecificDataProvider {
Vector2d findDoorOffset(World w, String dungeonName);
BossfightProcessor createBossfightProcessor(World w, String dungeonName);
+
+ boolean isTrapSpawn(String dungeonName);
} \ No newline at end of file