aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/kr/syeyoung/dungeonsguide/features/impl/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/features/impl/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/features/impl/dungeon')
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/features/impl/dungeon/FeatureDungeonScore.java21
1 files changed, 17 insertions, 4 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/features/impl/dungeon/FeatureDungeonScore.java b/src/main/java/kr/syeyoung/dungeonsguide/features/impl/dungeon/FeatureDungeonScore.java
index f3fd44d3..4c774d20 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/features/impl/dungeon/FeatureDungeonScore.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/features/impl/dungeon/FeatureDungeonScore.java
@@ -190,17 +190,23 @@ public class FeatureDungeonScore extends TextHUDFeature {
skill -= FeatureRegistry.DUNGEON_DEATHS.getTotalDeaths() * 2;
int totalCompRooms= 0;
boolean bossroomFound = false;
+ boolean traproomFound = false;
for (DungeonRoom dungeonRoom : context.getDungeonRoomList()) {
if (dungeonRoom.getColor() == 74) bossroomFound = true;
+ if (dungeonRoom.getColor() == 62) traproomFound = true;
if (dungeonRoom.getCurrentState() != DungeonRoom.RoomState.DISCOVERED)
totalCompRooms += dungeonRoom.getUnitPoints().size();
if (dungeonRoom.getColor() == 66 && dungeonRoom.getCurrentState() == DungeonRoom.RoomState.DISCOVERED)
skill -= 10;
if (dungeonRoom.getColor() == 74 && dungeonRoom.getCurrentState() == DungeonRoom.RoomState.DISCOVERED)
skill += 1;
+ if (dungeonRoom.getColor() == 62 && dungeonRoom.getCurrentState() == DungeonRoom.RoomState.DISCOVERED)
+ skill += 1;
+
skill += dungeonRoom.getCurrentState().getScoreModifier();
}
if (!bossroomFound) skill += 1;
+ if (!traproomFound && context.isTrapRoomGen()) skill += 1;
skill -= getUndiscoveredPuzzles() * 10;
skill -= (getTotalRooms() - totalCompRooms) * 4;
skill = MathHelper.clamp_int(skill, 0, 100);
@@ -225,17 +231,24 @@ public class FeatureDungeonScore extends TextHUDFeature {
int time = 0;
{
double timeModifier;
+ int timeModifierModifier =
+ e.getDungeonsGuide().getSkyblockStatus().getDungeonName().substring(14).trim().equals("F2") ? -120 : 0;
if (context.getBossRoomEnterSeconds() != -1) {
- timeModifier = Math.max(0, context.getBossRoomEnterSeconds() - 1200);
+ timeModifier = Math.max(0, context.getBossRoomEnterSeconds() - timeModifierModifier);
} else {
- timeModifier = Math.max(0, FeatureRegistry.DUNGEON_SBTIME.getTimeElapsed() / 1000 - 1200);
+ timeModifier = Math.max(0, FeatureRegistry.DUNGEON_SBTIME.getTimeElapsed() / 1000 - timeModifierModifier);
}
- time = MathHelper.clamp_int((int) Math.floor(100 - 2.2 * timeModifier), 0, 100);
+
+ if (timeModifier <= 1320) time = 100;
+ else if (timeModifier <= 1420) time = (int) Math.ceil(232 - 0.1 * timeModifier);
+ else if (timeModifier <= 1820) time = (int) Math.ceil(161 - 0.05 * timeModifier);
+ else if (timeModifier < 3920) time = (int) Math.ceil(392/3.0 - (1/30.0) * timeModifier);
}
int bonus = 0;
int tombs;
{
bonus += tombs = MathHelper.clamp_int(FeatureRegistry.DUNGEON_TOMBS.getTombsFound(), 0, 5);
+ if (context.isGotMimic()) bonus += 2;
}
// amazing thing
@@ -272,7 +285,7 @@ public class FeatureDungeonScore extends TextHUDFeature {
String currentLetter = getLetter(current);
String nextLetter= getNextLetter(currentLetter);
if (nextLetter == null) {
- actualBit.add(new StyledText(nextLetter+" Expected","nextScore"));
+ actualBit.add(new StyledText("S+ Expected","nextScore"));
return actualBit;
}
int req = getScoreRequirement(nextLetter);