diff options
Diffstat (limited to 'src/main/kotlin/moe/nea/firmament/events/IsSlotProtectedEvent.kt')
-rw-r--r-- | src/main/kotlin/moe/nea/firmament/events/IsSlotProtectedEvent.kt | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/src/main/kotlin/moe/nea/firmament/events/IsSlotProtectedEvent.kt b/src/main/kotlin/moe/nea/firmament/events/IsSlotProtectedEvent.kt deleted file mode 100644 index cd431f7..0000000 --- a/src/main/kotlin/moe/nea/firmament/events/IsSlotProtectedEvent.kt +++ /dev/null @@ -1,46 +0,0 @@ - - -package moe.nea.firmament.events - -import net.minecraft.item.ItemStack -import net.minecraft.screen.slot.Slot -import net.minecraft.screen.slot.SlotActionType -import net.minecraft.text.Text -import moe.nea.firmament.util.CommonSoundEffects -import moe.nea.firmament.util.MC - -data class IsSlotProtectedEvent( - val slot: Slot?, - val actionType: SlotActionType, - var isProtected: Boolean, - val itemStackOverride: ItemStack?, - var silent: Boolean = false, -) : FirmamentEvent() { - val itemStack get() = itemStackOverride ?: slot!!.stack - - fun protect() { - isProtected = true - } - - fun protectSilent() { - if (!isProtected) { - silent = true - } - isProtected = true - } - - companion object : FirmamentEventBus<IsSlotProtectedEvent>() { - @JvmStatic - @JvmOverloads - fun shouldBlockInteraction(slot: Slot?, action: SlotActionType, itemStackOverride: ItemStack? = null): Boolean { - if (slot == null && itemStackOverride == null) return false - val event = IsSlotProtectedEvent(slot, action, false, itemStackOverride) - publish(event) - if (event.isProtected && !event.silent) { - MC.player?.sendMessage(Text.translatable("firmament.protectitem").append(event.itemStack.name)) - CommonSoundEffects.playFailure() - } - return event.isProtected - } - } -} |