summaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/features/misc/PrivateIslandNoPickaxeAbility.kt
blob: dc55af349d149e96ba2756b267d5015e7be58865 (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
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.skyhannimodule.SkyHanniModule
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

@SkyHanniModule
object PrivateIslandNoPickaxeAbility {

    private 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

        if (event.itemInHand?.getItemCategoryOrNull()?.let {
                ItemCategory.miningTools.contains(it)
            } == true) {
            event.cancel()
        }
    }
}