aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/utils
diff options
context:
space:
mode:
authorhannibal2 <24389977+hannibal00212@users.noreply.github.com>2023-04-21 23:51:37 +0200
committerhannibal2 <24389977+hannibal00212@users.noreply.github.com>2023-04-21 23:51:37 +0200
commitad5e66f4b03ae80cd4f4cf6268495e6b4db901de (patch)
tree5faca09b5f11dc17309aef3ada27a6194e8ace4e /src/main/java/at/hannibal2/skyhanni/utils
parent9dcb17f1d853796620817e036c53a67ae4635125 (diff)
downloadSkyHanni-ad5e66f4b03ae80cd4f4cf6268495e6b4db901de.tar.gz
SkyHanni-ad5e66f4b03ae80cd4f4cf6268495e6b4db901de.tar.bz2
SkyHanni-ad5e66f4b03ae80cd4f4cf6268495e6b4db901de.zip
added useful stuff
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/utils')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/utils/ItemBlink.kt31
-rw-r--r--src/main/java/at/hannibal2/skyhanni/utils/LorenzUtils.kt3
-rw-r--r--src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt6
3 files changed, 38 insertions, 2 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/ItemBlink.kt b/src/main/java/at/hannibal2/skyhanni/utils/ItemBlink.kt
new file mode 100644
index 000000000..8afc2a2b7
--- /dev/null
+++ b/src/main/java/at/hannibal2/skyhanni/utils/ItemBlink.kt
@@ -0,0 +1,31 @@
+package at.hannibal2.skyhanni.utils
+
+import net.minecraft.item.Item
+import net.minecraft.item.ItemStack
+
+object ItemBlink {
+ private val offsets = mutableMapOf<Item, Long>()
+ private var lastOffset = 0L
+ private var endOfBlink = 0L
+ private var blinkItem: ItemStack? = null
+
+ fun setBlink(item: ItemStack?, durationMillis: Long) {
+ endOfBlink = System.currentTimeMillis() + durationMillis
+ blinkItem = item
+ }
+
+ fun ItemStack.checkBlinkItem(): ItemStack {
+ val stack = blinkItem ?: return this
+ if (System.currentTimeMillis() > endOfBlink) return this
+
+ val offset: Long = if (!offsets.containsKey(item)) {
+ lastOffset += 200
+ val number = lastOffset % 1000
+ offsets[item] = number
+ number
+ } else {
+ offsets[item]!!
+ }
+ return if ((offset + System.currentTimeMillis()) % 1000 > 500) stack else this
+ }
+} \ No newline at end of file
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/LorenzUtils.kt b/src/main/java/at/hannibal2/skyhanni/utils/LorenzUtils.kt
index 526d2a3c7..8047cc61a 100644
--- a/src/main/java/at/hannibal2/skyhanni/utils/LorenzUtils.kt
+++ b/src/main/java/at/hannibal2/skyhanni/utils/LorenzUtils.kt
@@ -51,6 +51,9 @@ object LorenzUtils {
val isBingoProfile: Boolean
get() = inSkyBlock && HypixelData.bingo
+ val lastWorldSwitch: Long
+ get() = HypixelData.joinedWorld
+
const val DEBUG_PREFIX = "[SkyHanni Debug] ยง7"
private val log = LorenzLogger("chat/mod_sent")
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt b/src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt
index 71bcc2f09..b34462e3e 100644
--- a/src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt
+++ b/src/main/java/at/hannibal2/skyhanni/utils/NEUItems.kt
@@ -1,5 +1,6 @@
package at.hannibal2.skyhanni.utils
+import at.hannibal2.skyhanni.utils.ItemBlink.checkBlinkItem
import at.hannibal2.skyhanni.utils.ItemUtils.getInternalName
import at.hannibal2.skyhanni.utils.NumberUtil.romanToDecimal
import io.github.moulberry.notenoughupdates.NEUManager
@@ -122,7 +123,8 @@ object NEUItems {
fun isVanillaItem(item: ItemStack) = manager.auctionManager.isVanillaItem(item.getInternalName())
fun ItemStack.renderOnScreen(x: Float, y: Float, scaleMultiplier: Double = 1.0) {
- val isSkull = item === Items.skull
+ val item = checkBlinkItem()
+ val isSkull = item.item === Items.skull
val baseScale = (if (isSkull) 0.8f else 0.6f)
val finalScale = baseScale * scaleMultiplier
@@ -144,7 +146,7 @@ object NEUItems {
GlStateManager.scale(finalScale, finalScale, 1.0)
RenderHelper.enableGUIStandardItemLighting()
- Minecraft.getMinecraft().renderItem.renderItemIntoGUI(this, 0, 0)
+ Minecraft.getMinecraft().renderItem.renderItemIntoGUI(item, 0, 0)
RenderHelper.disableStandardItemLighting()
GlStateManager.popMatrix()