blob: 8798493fc3dd578fd3c64c7725d77a8ebce04d84 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
package moe.nea.firmament.repo.item
import com.google.auto.service.AutoService
import net.minecraft.item.ItemStack
import net.minecraft.nbt.NbtInt
import moe.nea.firmament.repo.set
import moe.nea.firmament.util.extraAttributes
import moe.nea.firmament.util.mc.modifyLore
import moe.nea.firmament.util.modifyExtraAttributes
import moe.nea.firmament.util.skyblock.Rarity
@AutoService(SBItemProperty::class)
object SBRecombobulator : SBItemProperty.State<Boolean>() {
override fun applyToStack(
stack: ItemStack,
store: SBItemData,
value: Boolean?
): ItemStack {
if (value != true) return stack
stack.modifyLore { lore ->
Rarity.recombobulateLore(lore)
}
stack.modifyExtraAttributes {
it["rarity_upgrades"] = NbtInt.of(1)
}
return stack
}
override fun fromStack(
stack: ItemStack,
store: SBItemData
): Boolean? {
return stack.extraAttributes.getInt("rarity_upgrades") > 0
}
override val order: Int
get() = -100
}
|