From 88cb9468b4432f68d1197f512f68c951fdbdf3dd Mon Sep 17 00:00:00 2001 From: nea Date: Tue, 30 May 2023 22:47:56 +0200 Subject: Forge recipes and coin items --- .../kotlin/moe/nea/firmament/rei/SBItemEntryDefinition.kt | 15 +++++++++------ src/main/kotlin/moe/nea/firmament/rei/math.kt | 8 ++++++++ 2 files changed, 17 insertions(+), 6 deletions(-) create mode 100644 src/main/kotlin/moe/nea/firmament/rei/math.kt (limited to 'src/main/kotlin/moe/nea/firmament/rei') diff --git a/src/main/kotlin/moe/nea/firmament/rei/SBItemEntryDefinition.kt b/src/main/kotlin/moe/nea/firmament/rei/SBItemEntryDefinition.kt index 1e5ae4c..ee6b673 100644 --- a/src/main/kotlin/moe/nea/firmament/rei/SBItemEntryDefinition.kt +++ b/src/main/kotlin/moe/nea/firmament/rei/SBItemEntryDefinition.kt @@ -33,6 +33,7 @@ import net.minecraft.registry.tag.TagKey import net.minecraft.text.Text import net.minecraft.util.Identifier import moe.nea.firmament.rei.FirmamentReiPlugin.Companion.asItemEntry +import moe.nea.firmament.repo.ItemCache import moe.nea.firmament.repo.ItemCache.asItemStack import moe.nea.firmament.repo.RepoManager import moe.nea.firmament.util.SkyblockId @@ -43,15 +44,17 @@ data class SBItemStack( val skyblockId: SkyblockId, val neuItem: NEUItem?, val stackSize: Int, -) +) { + fun asItemStack(): ItemStack? { + if (skyblockId == SkyblockId.COINS) + return ItemCache.coinItem(stackSize) + return neuItem.asItemStack(idHint = skyblockId).copyWithCount(stackSize) + } +} object SBItemEntryDefinition : EntryDefinition { override fun equals(o1: SBItemStack, o2: SBItemStack, context: ComparisonContext): Boolean { - if (!context.isFuzzy) { - if (o1.stackSize != o2.stackSize) - return false - } - return o1.skyblockId == o2.skyblockId + return o1.skyblockId == o2.skyblockId && o1.stackSize == o2.stackSize } override fun cheatsAs(entry: EntryStack?, value: SBItemStack): ItemStack { diff --git a/src/main/kotlin/moe/nea/firmament/rei/math.kt b/src/main/kotlin/moe/nea/firmament/rei/math.kt new file mode 100644 index 0000000..e3504a1 --- /dev/null +++ b/src/main/kotlin/moe/nea/firmament/rei/math.kt @@ -0,0 +1,8 @@ +package moe.nea.firmament.rei + +import me.shedaniel.math.Point + +operator fun Point.plus(other: Point): Point = Point( + this.x + other.x, + this.y + other.y, +) -- cgit