aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoman / Linnea Gräf <roman.graef@gmail.com>2022-12-22 16:24:34 +0100
committerGitHub <noreply@github.com>2022-12-22 16:24:34 +0100
commit0aefc9b967c1cdcc61e46dc822995e2f507838ab (patch)
tree352aa1df7ccb1f5a1553c58233367992bb69b5e1
parent6341660866cd76cf64bb65ee406f6aebfe146413 (diff)
downloadNotEnoughUpdates-0aefc9b967c1cdcc61e46dc822995e2f507838ab.tar.gz
NotEnoughUpdates-0aefc9b967c1cdcc61e46dc822995e2f507838ab.tar.bz2
NotEnoughUpdates-0aefc9b967c1cdcc61e46dc822995e2f507838ab.zip
PetLeveling: Fix non legendary pets being able to be leveled above 100 (#499)
-rw-r--r--src/main/kotlin/io/github/moulberry/notenoughupdates/util/PetLeveling.kt2
-rw-r--r--src/test/kotlin/io/github/moulberry/notenoughupdates/util/PetLevelingTest.kt19
2 files changed, 20 insertions, 1 deletions
diff --git a/src/main/kotlin/io/github/moulberry/notenoughupdates/util/PetLeveling.kt b/src/main/kotlin/io/github/moulberry/notenoughupdates/util/PetLeveling.kt
index e7d29642..0a9e37b9 100644
--- a/src/main/kotlin/io/github/moulberry/notenoughupdates/util/PetLeveling.kt
+++ b/src/main/kotlin/io/github/moulberry/notenoughupdates/util/PetLeveling.kt
@@ -105,7 +105,7 @@ object PetLeveling {
}
maxLevel = customLeveling["max_level"]?.asInt ?: maxLevel
}
- return ExpLadder(levels.drop(offset).take(maxLevel))
+ return ExpLadder(levels.drop(offset).take(maxLevel - 1))
}
}
diff --git a/src/test/kotlin/io/github/moulberry/notenoughupdates/util/PetLevelingTest.kt b/src/test/kotlin/io/github/moulberry/notenoughupdates/util/PetLevelingTest.kt
index 43a0e3fd..d91ca09d 100644
--- a/src/test/kotlin/io/github/moulberry/notenoughupdates/util/PetLevelingTest.kt
+++ b/src/test/kotlin/io/github/moulberry/notenoughupdates/util/PetLevelingTest.kt
@@ -337,6 +337,25 @@ internal class PetLevelingTest {
PetLeveling.petConstants = testJson
}
+
+ @Test
+ fun testMaxedLevel200Pet() {
+ val leveling = PetLeveling.getPetLevelingForPet0("GOLDEN_DRAGON", PetInfoOverlay.Rarity.LEGENDARY)
+ Assertions.assertEquals(200, leveling.cumulativeLevelCost.size)
+ val level = leveling.getPetLevel(219451664.0)
+ Assertions.assertEquals(200, level.maxLevel)
+ Assertions.assertEquals(200, level.currentLevel)
+ }
+
+ @Test
+ fun testNonLegendaryMaxLevelPet() {
+ val leveling = PetLeveling.getPetLevelingForPet0("GUARDIAN", PetInfoOverlay.Rarity.EPIC)
+ Assertions.assertEquals(100, leveling.cumulativeLevelCost.size)
+ val level = leveling.getPetLevel(67790664.0)
+ Assertions.assertEquals(100, level.currentLevel)
+ Assertions.assertEquals(100, level.maxLevel)
+ }
+
@Test
fun testPetLevelGrandmaWolf() {
val leveling = PetLeveling.getPetLevelingForPet0("GRANDMA_WOLF", PetInfoOverlay.Rarity.LEGENDARY)