feat: Custom Skyblock ID for Attribute Shards and Potion (This means Potions and Attribute Shards now show prices)
This commit is contained in:
@@ -6,8 +6,7 @@ import com.mojang.serialization.Codec
|
|||||||
import io.github.moulberry.repo.data.NEUIngredient
|
import io.github.moulberry.repo.data.NEUIngredient
|
||||||
import io.github.moulberry.repo.data.NEUItem
|
import io.github.moulberry.repo.data.NEUItem
|
||||||
import io.github.moulberry.repo.data.Rarity
|
import io.github.moulberry.repo.data.Rarity
|
||||||
import java.util.Optional
|
import java.util.*
|
||||||
import java.util.UUID
|
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
import kotlinx.serialization.UseSerializers
|
import kotlinx.serialization.UseSerializers
|
||||||
import kotlinx.serialization.json.Json
|
import kotlinx.serialization.json.Json
|
||||||
@@ -202,7 +201,31 @@ val ItemStack.skyBlockId: SkyblockId?
|
|||||||
else SkyblockId("${enchantName.uppercase()};${enchantmentData.getInt(enchantName).getOrNull()}")
|
else SkyblockId("${enchantName.uppercase()};${enchantmentData.getInt(enchantName).getOrNull()}")
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: PARTY_HAT_CRAB{,_ANIMATED,_SLOTH},POTION
|
"ATTRIBUTE_SHARD" -> {
|
||||||
|
val attributeData = extraAttributes.getCompound("attributes").getOrNull()
|
||||||
|
val attributeName = attributeData?.keys?.singleOrNull()
|
||||||
|
if (attributeName == null) SkyblockId("ATTRIBUTE_SHARD")
|
||||||
|
else SkyblockId(
|
||||||
|
"ATTRIBUTE_SHARD_${attributeName.uppercase()};${
|
||||||
|
attributeData.getInt(attributeName).getOrNull()
|
||||||
|
}"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
"POTION" -> {
|
||||||
|
val potionData = extraAttributes.getString("potion").getOrNull()
|
||||||
|
val potionName = extraAttributes.getString("potion_name").getOrNull()
|
||||||
|
val potionLevel = extraAttributes.getInt("potion_level").getOrNull()
|
||||||
|
val potionType = extraAttributes.getString("potion_type").getOrNull()
|
||||||
|
when {
|
||||||
|
potionName != null -> SkyblockId("POTION_${potionName.uppercase()};$potionLevel")
|
||||||
|
potionData != null -> SkyblockId("POTION_${potionData.uppercase()};$potionLevel")
|
||||||
|
potionType != null -> SkyblockId("POTION${potionType.uppercase()}")
|
||||||
|
else -> SkyblockId("WATER_BOTTLE")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: PARTY_HAT_CRAB{,_ANIMATED,_SLOTH}
|
||||||
else -> {
|
else -> {
|
||||||
SkyblockId(id)
|
SkyblockId(id)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user