From 3ced2632ac23d968601f83374b8b3ceee0fc5e36 Mon Sep 17 00:00:00 2001 From: Thunderblade73 <85900443+Thunderblade73@users.noreply.github.com> Date: Sat, 10 Feb 2024 21:25:20 +0100 Subject: Blocks the mining ability when on private island. #860 --- .../features/misc/PrivateIslandNoPickaxeAbility.kt | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/main/java/at/hannibal2/skyhanni/features/misc/PrivateIslandNoPickaxeAbility.kt (limited to 'src/main/java/at/hannibal2/skyhanni/features/misc') diff --git a/src/main/java/at/hannibal2/skyhanni/features/misc/PrivateIslandNoPickaxeAbility.kt b/src/main/java/at/hannibal2/skyhanni/features/misc/PrivateIslandNoPickaxeAbility.kt new file mode 100644 index 000000000..65559d8a6 --- /dev/null +++ b/src/main/java/at/hannibal2/skyhanni/features/misc/PrivateIslandNoPickaxeAbility.kt @@ -0,0 +1,30 @@ +package at.hannibal2.skyhanni.features.misc + +import at.hannibal2.skyhanni.SkyHanniMod +import at.hannibal2.skyhanni.data.ClickType +import at.hannibal2.skyhanni.data.IslandType +import at.hannibal2.skyhanni.events.WorldClickEvent +import at.hannibal2.skyhanni.utils.ItemCategory +import at.hannibal2.skyhanni.utils.ItemUtils.getItemCategoryOrNull +import at.hannibal2.skyhanni.utils.LorenzUtils.isInIsland +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent + +class PrivateIslandNoPickaxeAbility { + + val config get() = SkyHanniMod.feature.mining + + @SubscribeEvent + fun onClick(event: WorldClickEvent) { + if (!IslandType.PRIVATE_ISLAND.isInIsland()) return + if (!config.privateIslandNoPickaxeAbility) return + if (event.clickType != ClickType.RIGHT_CLICK) return + + when (event.itemInHand?.getItemCategoryOrNull()) { + ItemCategory.GAUNTLET, ItemCategory.PICKAXE, ItemCategory.DRILL -> { + event.isCanceled = true + } + + else -> {} + } + } +} -- cgit