diff options
author | Linnea Gräf <nea@nea.moe> | 2024-11-01 23:00:53 +0100 |
---|---|---|
committer | Linnea Gräf <nea@nea.moe> | 2024-11-01 23:00:53 +0100 |
commit | 8b410fbdf2cffb3ceaa51bbea150f5165848bc37 (patch) | |
tree | e4b4ec4ba24a7edbefa45b7deb2503b74214ee02 /src/main/kotlin/features/texturepack/PetPredicate.kt | |
parent | 653454e290a1bb6142e2bb40947239c2e450820b (diff) | |
download | Firmament-8b410fbdf2cffb3ceaa51bbea150f5165848bc37.tar.gz Firmament-8b410fbdf2cffb3ceaa51bbea150f5165848bc37.tar.bz2 Firmament-8b410fbdf2cffb3ceaa51bbea150f5165848bc37.zip |
Add tint override to texture packs
Diffstat (limited to 'src/main/kotlin/features/texturepack/PetPredicate.kt')
-rw-r--r-- | src/main/kotlin/features/texturepack/PetPredicate.kt | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/src/main/kotlin/features/texturepack/PetPredicate.kt b/src/main/kotlin/features/texturepack/PetPredicate.kt deleted file mode 100644 index 5e5d750..0000000 --- a/src/main/kotlin/features/texturepack/PetPredicate.kt +++ /dev/null @@ -1,66 +0,0 @@ - -package moe.nea.firmament.features.texturepack - -import com.google.gson.JsonElement -import com.google.gson.JsonObject -import net.minecraft.item.ItemStack -import moe.nea.firmament.repo.ExpLadders -import moe.nea.firmament.util.petData - -class PetPredicate( - val petId: StringMatcher?, - val tier: RarityMatcher?, - val exp: NumberMatcher?, - val candyUsed: NumberMatcher?, - val level: NumberMatcher?, -) : FirmamentModelPredicate { - - override fun test(stack: ItemStack): Boolean { - val petData = stack.petData ?: return false - if (petId != null) { - if (!petId.matches(petData.type)) return false - } - if (exp != null) { - if (!exp.test(petData.exp)) return false - } - if (candyUsed != null) { - if (!candyUsed.test(petData.candyUsed)) return false - } - if (tier != null) { - if (!tier.match(petData.tier)) return false - } - val levelData by lazy(LazyThreadSafetyMode.NONE) { - ExpLadders.getExpLadder(petData.type, petData.tier) - .getPetLevel(petData.exp) - } - if (level != null) { - if (!level.test(levelData.currentLevel)) return false - } - return true - } - - object Parser : FirmamentModelPredicateParser { - override fun parse(jsonElement: JsonElement): FirmamentModelPredicate? { - if (jsonElement.isJsonPrimitive) { - return PetPredicate(StringMatcher.Equals(jsonElement.asString, false), null, null, null, null) - } - if (jsonElement !is JsonObject) return null - val idMatcher = jsonElement["id"]?.let(StringMatcher::parse) - val expMatcher = jsonElement["exp"]?.let(NumberMatcher::parse) - val levelMatcher = jsonElement["level"]?.let(NumberMatcher::parse) - val candyMatcher = jsonElement["candyUsed"]?.let(NumberMatcher::parse) - val tierMatcher = jsonElement["tier"]?.let(RarityMatcher::parse) - return PetPredicate( - idMatcher, - tierMatcher, - expMatcher, - candyMatcher, - levelMatcher, - ) - } - } - - override fun toString(): String { - return super.toString() - } -} |