aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/at/hannibal2')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/data/GuiEditManager.kt3
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/misc/ChestValue.kt36
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/misc/SkyBlockKickDuration.kt16
-rw-r--r--src/main/java/at/hannibal2/skyhanni/utils/InventoryUtils.kt31
-rw-r--r--src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt8
5 files changed, 52 insertions, 42 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/data/GuiEditManager.kt b/src/main/java/at/hannibal2/skyhanni/data/GuiEditManager.kt
index fa633eaa4..4f3110789 100644
--- a/src/main/java/at/hannibal2/skyhanni/data/GuiEditManager.kt
+++ b/src/main/java/at/hannibal2/skyhanni/data/GuiEditManager.kt
@@ -22,6 +22,7 @@ class GuiEditManager {
@SubscribeEvent
fun onKeyClick(event: LorenzKeyPressEvent) {
if (!LorenzUtils.inSkyBlock) return
+ if (event.keyCode != SkyHanniMod.feature.gui.keyBindOpen) return
if (isInGui()) return
Minecraft.getMinecraft().currentScreen?.let {
@@ -31,7 +32,7 @@ class GuiEditManager {
if (NEUItems.neuHasFocus()) return
- if (event.keyCode == SkyHanniMod.feature.gui.keyBindOpen) openGuiPositionEditor()
+ openGuiPositionEditor()
}
@SubscribeEvent(priority = EventPriority.LOWEST)
diff --git a/src/main/java/at/hannibal2/skyhanni/features/misc/ChestValue.kt b/src/main/java/at/hannibal2/skyhanni/features/misc/ChestValue.kt
index 23d7af564..82db5d451 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/misc/ChestValue.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/misc/ChestValue.kt
@@ -1,17 +1,13 @@
package at.hannibal2.skyhanni.features.misc
import at.hannibal2.skyhanni.SkyHanniMod
-import at.hannibal2.skyhanni.config.ConfigManager
import at.hannibal2.skyhanni.data.IslandType
-import at.hannibal2.skyhanni.data.OtherMod
import at.hannibal2.skyhanni.events.GuiContainerEvent
import at.hannibal2.skyhanni.events.GuiRenderEvent
import at.hannibal2.skyhanni.events.InventoryCloseEvent
import at.hannibal2.skyhanni.events.InventoryOpenEvent
import at.hannibal2.skyhanni.events.LorenzTickEvent
import at.hannibal2.skyhanni.features.misc.items.EstimatedItemValue
-import at.hannibal2.skyhanni.test.command.ErrorManager
-import at.hannibal2.skyhanni.utils.APIUtil
import at.hannibal2.skyhanni.utils.InventoryUtils
import at.hannibal2.skyhanni.utils.ItemUtils.getInternalNameOrNull
import at.hannibal2.skyhanni.utils.LorenzUtils
@@ -21,7 +17,6 @@ import at.hannibal2.skyhanni.utils.NEUInternalName
import at.hannibal2.skyhanni.utils.NEUItems.getItemStackOrNull
import at.hannibal2.skyhanni.utils.NumberUtil
import at.hannibal2.skyhanni.utils.NumberUtil.addSeparators
-import at.hannibal2.skyhanni.utils.RecalculatingValue
import at.hannibal2.skyhanni.utils.RenderUtils.highlight
import at.hannibal2.skyhanni.utils.RenderUtils.renderStringsAndItems
import at.hannibal2.skyhanni.utils.SpecialColour
@@ -34,15 +29,13 @@ import net.minecraft.item.ItemStack
import net.minecraftforge.fml.common.eventhandler.EventPriority
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
import java.awt.Color
-import java.io.File
-import kotlin.time.Duration.Companion.seconds
class ChestValue {
private val config get() = SkyHanniMod.feature.inventory.chestValueConfig
private var display = emptyList<List<Any>>()
private val chestItems = mutableMapOf<NEUInternalName, Item>()
- private val inInventory get() = InventoryUtils.openInventoryName().removeColor().isValidStorage()
+ private val inInventory get() = isValidStorage()
@SubscribeEvent
fun onBackgroundDraw(event: GuiRenderEvent.ChestGuiOverlayRenderEvent) {
@@ -234,34 +227,19 @@ class ChestValue {
COMPACT("Aligned")
}
- private fun String.isValidStorage(): Boolean {
+ private fun isValidStorage(): Boolean {
+ val name = InventoryUtils.openInventoryName().removeColor()
if (Minecraft.getMinecraft().currentScreen !is GuiChest) return false
- if ((contains("Backpack") && contains("Slot #") || startsWith("Ender Chest (")) &&
- !isNeuStorageEnabled.getValue()
+ if ((name.contains("Backpack") && name.contains("Slot #") || name.startsWith("Ender Chest (")) &&
+ !InventoryUtils.isNeuStorageEnabled.getValue()
) {
return true
}
- val inMinion = contains("Minion") && !contains("Recipe") &&
+ val inMinion = name.contains("Minion") && !name.contains("Recipe") &&
LorenzUtils.skyBlockIsland == IslandType.PRIVATE_ISLAND
- return this == "Chest" || this == "Large Chest" || inMinion || this == "Personal Vault"
- }
-
- private val isNeuStorageEnabled = RecalculatingValue(1.seconds) {
- try {
- val configPath = OtherMod.NEU.configPath
- if (File(configPath).exists()) {
- val json = ConfigManager.gson.fromJson(
- APIUtil.readFile(File(configPath)),
- com.google.gson.JsonObject::class.java
- )
- json["storageGUI"].asJsonObject["enableStorageGUI3"].asBoolean
- } else false
- } catch (e: Exception) {
- ErrorManager.logError(e, "Could not read NEU config to determine if the neu storage is emabled.")
- false
- }
+ return name == "Chest" || name == "Large Chest" || inMinion || name == "Personal Vault"
}
private fun String.reduceStringLength(targetLength: Int, char: Char): String {
diff --git a/src/main/java/at/hannibal2/skyhanni/features/misc/SkyBlockKickDuration.kt b/src/main/java/at/hannibal2/skyhanni/features/misc/SkyBlockKickDuration.kt
index e5763ed58..5325da375 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/misc/SkyBlockKickDuration.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/misc/SkyBlockKickDuration.kt
@@ -24,8 +24,20 @@ class SkyBlockKickDuration {
fun onChat(event: LorenzChatEvent) {
if (!isEnabled()) return
if (event.message == "§cYou were kicked while joining that server!") {
- //if is in hub: enable rn
- kickMessage = true
+
+ if (LorenzUtils.onHypixel && !LorenzUtils.inSkyBlock) {
+ kickMessage = false
+ showTime = true
+ lastKickTime = SimpleTimeMark.farPast()
+ } else {
+ kickMessage = true
+ }
+ }
+
+ if (event.message == "§cThere was a problem joining SkyBlock, try again in a moment!") {
+ kickMessage = false
+ showTime = true
+ lastKickTime = SimpleTimeMark.farPast()
}
}
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/InventoryUtils.kt b/src/main/java/at/hannibal2/skyhanni/utils/InventoryUtils.kt
index 8aefe5a2e..4c60444c1 100644
--- a/src/main/java/at/hannibal2/skyhanni/utils/InventoryUtils.kt
+++ b/src/main/java/at/hannibal2/skyhanni/utils/InventoryUtils.kt
@@ -1,10 +1,15 @@
package at.hannibal2.skyhanni.utils
+import at.hannibal2.skyhanni.config.ConfigManager
+import at.hannibal2.skyhanni.data.OtherMod
+import at.hannibal2.skyhanni.test.command.ErrorManager
import net.minecraft.client.Minecraft
import net.minecraft.client.gui.inventory.GuiChest
import net.minecraft.inventory.ContainerChest
import net.minecraft.inventory.Slot
import net.minecraft.item.ItemStack
+import java.io.File
+import kotlin.time.Duration.Companion.seconds
object InventoryUtils {
var itemInHandId = NEUInternalName.NONE
@@ -39,14 +44,28 @@ object InventoryUtils {
fun countItemsInLowerInventory(predicate: (ItemStack) -> Boolean) =
getItemsInOwnInventory().filter { predicate(it) }.sumOf { it.stackSize }
- fun inStorage() =
- openInventoryName().let {
- (it.contains("Storage") && !it.contains("Rift Storage")) || it.contains("Ender Chest") || it.contains(
- "Backpack"
- )
- }
+ fun inStorage() = openInventoryName().let {
+ (it.contains("Storage") && !it.contains("Rift Storage"))
+ || it.contains("Ender Chest") || it.contains("Backpack")
+ }
fun getItemInHand(): ItemStack? = Minecraft.getMinecraft().thePlayer.heldItem
fun getArmor(): Array<ItemStack?> = Minecraft.getMinecraft().thePlayer.inventory.armorInventory
+
+ val isNeuStorageEnabled = RecalculatingValue(10.seconds) {
+ try {
+ val configPath = OtherMod.NEU.configPath
+ if (File(configPath).exists()) {
+ val json = ConfigManager.gson.fromJson(
+ APIUtil.readFile(File(configPath)),
+ com.google.gson.JsonObject::class.java
+ )
+ json["storageGUI"].asJsonObject["enableStorageGUI3"].asBoolean
+ } else false
+ } catch (e: Exception) {
+ ErrorManager.logError(e, "Could not read NEU config to determine if the neu storage is emabled.")
+ false
+ }
+ }
} \ No newline at end of file
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt b/src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt
index ab21c47b1..dd4e21dc1 100644
--- a/src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt
+++ b/src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt
@@ -252,17 +252,17 @@ object NEUItems {
// ignore wheat in enchanted cookie
if (internalName == "ENCHANTED_COOKIE" && internalItemId == "WHEAT") {
- continue
+ continue
}
// ignore golden carrot in enchanted golden carrot
if (internalName == "ENCHANTED_GOLDEN_CARROT" && internalItemId == "GOLDEN_CARROT") {
- continue
+ continue
}
// ignore rabbit hide in leather
if (internalName == "LEATHER" && internalItemId == "RABBIT_HIDE") {
- continue
+ continue
}
val old = map.getOrDefault(internalItemId, 0)
@@ -298,7 +298,7 @@ object NEUItems {
fun neuHasFocus(): Boolean {
if (AuctionSearchOverlay.shouldReplace()) return true
if (BazaarSearchOverlay.shouldReplace()) return true
- if (InventoryUtils.inStorage()) return true
+ if (InventoryUtils.inStorage() && InventoryUtils.isNeuStorageEnabled.getValue()) return true
if (NEUOverlay.searchBarHasFocus) return true
return false