diff options
| author | Thunderblade73 <85900443+Thunderblade73@users.noreply.github.com> | 2024-06-23 20:06:17 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-23 20:06:17 +0200 |
| commit | 6eb085f4e2ba69e98934ffa9489c8679ba23d244 (patch) | |
| tree | 6f3f4abe26118a5c14ed84ce48408b17665be79f /src/main/java/at/hannibal2/skyhanni/utils/json | |
| parent | 78f5f7b94bdc48c3395ef17f30022b8cd653a776 (diff) | |
| download | skyhanni-6eb085f4e2ba69e98934ffa9489c8679ba23d244.tar.gz skyhanni-6eb085f4e2ba69e98934ffa9489c8679ba23d244.tar.bz2 skyhanni-6eb085f4e2ba69e98934ffa9489c8679ba23d244.zip | |
Feature: Reforge helper (#1437)
Co-authored-by: CalMWolfs <94038482+CalMWolfs@users.noreply.github.com>
Co-authored-by: hannibal2 <24389977+hannibal002@users.noreply.github.com>
Co-authored-by: Cal <cwolfson58@gmail.com>
Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com>
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/utils/json')
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/utils/json/SkyHanniTypeAdapters.kt | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/json/SkyHanniTypeAdapters.kt b/src/main/java/at/hannibal2/skyhanni/utils/json/SkyHanniTypeAdapters.kt index dc50eef74..7859853ca 100644 --- a/src/main/java/at/hannibal2/skyhanni/utils/json/SkyHanniTypeAdapters.kt +++ b/src/main/java/at/hannibal2/skyhanni/utils/json/SkyHanniTypeAdapters.kt @@ -1,6 +1,7 @@ package at.hannibal2.skyhanni.utils.json import at.hannibal2.skyhanni.data.IslandType +import at.hannibal2.skyhanni.data.model.SkyblockStat import at.hannibal2.skyhanni.features.fishing.trophy.TrophyRarity import at.hannibal2.skyhanni.features.garden.CropType import at.hannibal2.skyhanni.features.garden.pests.PestType @@ -24,22 +25,22 @@ object SkyHanniTypeAdapters { val UUID: TypeAdapter<UUID> = SimpleStringTypeAdapter( { this.toString() }, - { java.util.UUID.fromString(this) } + { java.util.UUID.fromString(this) }, ) val INTERNAL_NAME: TypeAdapter<NEUInternalName> = SimpleStringTypeAdapter( { this.asString() }, - { this.asInternalName() } + { this.asInternalName() }, ) val VEC_STRING: TypeAdapter<LorenzVec> = SimpleStringTypeAdapter( { "$x:$y:$z" }, - { LorenzVec.decodeFromString(this) } + { LorenzVec.decodeFromString(this) }, ) val TROPHY_RARITY: TypeAdapter<TrophyRarity> = SimpleStringTypeAdapter( { name }, - { TrophyRarity.getByName(this) ?: error("Could not parse TrophyRarity from '$this'") } + { TrophyRarity.getByName(this) ?: error("Could not parse TrophyRarity from '$this'") }, ) val TIME_MARK: TypeAdapter<SimpleTimeMark> = object : TypeAdapter<SimpleTimeMark>() { @@ -54,12 +55,17 @@ object SkyHanniTypeAdapters { val CROP_TYPE: TypeAdapter<CropType> = SimpleStringTypeAdapter( { name }, - { CropType.getByName(this) } + { CropType.getByName(this) }, ) val PEST_TYPE: TypeAdapter<PestType> = SimpleStringTypeAdapter( { name }, - { PestType.getByName(this) } + { PestType.getByName(this) }, + ) + + val SKYBLOCK_STAT: TypeAdapter<SkyblockStat> = SimpleStringTypeAdapter( + { name.lowercase() }, + { SkyblockStat.valueOf(this.uppercase()) }, ) val TRACKER_DISPLAY_MODE = SimpleStringTypeAdapter.forEnum<SkyHanniTracker.DefaultDisplayMode>() @@ -70,10 +76,13 @@ object SkyHanniTypeAdapters { crossinline write: (JsonWriter, T) -> Unit, crossinline read: (JsonReader) -> T, ): GsonBuilder { - this.registerTypeAdapter(T::class.java, object : TypeAdapter<T>() { - override fun write(out: JsonWriter, value: T) = write(out, value) - override fun read(reader: JsonReader) = read(reader) - }.nullSafe()) + this.registerTypeAdapter( + T::class.java, + object : TypeAdapter<T>() { + override fun write(out: JsonWriter, value: T) = write(out, value) + override fun read(reader: JsonReader) = read(reader) + }.nullSafe(), + ) return this } } |
