aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornea <romangraef@gmail.com>2022-12-19 19:05:20 +0100
committernea <romangraef@gmail.com>2022-12-19 19:05:20 +0100
commit4a1ee6ae56b5f5b9cab8ad61ef6b26f4aceec694 (patch)
tree9e331beffb5046752b8c9a6218a8a2ca2a666aee
parentc6330fc85211706ee6a3c212bfa50005981e3799 (diff)
downloadNotEnoughUpdates-fix/epicpets.tar.gz
NotEnoughUpdates-fix/epicpets.tar.bz2
NotEnoughUpdates-fix/epicpets.zip
PetLeveling: Fix non legendary pets being able to be leveled above 100fix/epicpets
Also adds tests for this
-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)