diff options
| author | hannibal2 <24389977+hannibal00212@users.noreply.github.com> | 2023-09-15 10:36:57 +0200 |
|---|---|---|
| committer | hannibal2 <24389977+hannibal00212@users.noreply.github.com> | 2023-09-15 10:36:57 +0200 |
| commit | 5eae6a82b10cca07f3148f4d831ce285051634ca (patch) | |
| tree | ae669f050b2f2aa8caeb3fde92dac7c07919d656 /src/main/java/at/hannibal2/skyhanni/test | |
| parent | b1a2491e9a84b8a4a6261b43f97d3a907d979f06 (diff) | |
| download | skyhanni-5eae6a82b10cca07f3148f4d831ce285051634ca.tar.gz skyhanni-5eae6a82b10cca07f3148f4d831ce285051634ca.tar.bz2 skyhanni-5eae6a82b10cca07f3148f4d831ce285051634ca.zip | |
Added /shcopyinternalname and hotkey to copy internal names of items
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/test')
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/test/SkyHanniDebugsAndTests.kt | 33 | ||||
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/test/command/CopyItemCommand.kt | 4 |
2 files changed, 35 insertions, 2 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/test/SkyHanniDebugsAndTests.kt b/src/main/java/at/hannibal2/skyhanni/test/SkyHanniDebugsAndTests.kt index d330cc1d0..18baa8a5a 100644 --- a/src/main/java/at/hannibal2/skyhanni/test/SkyHanniDebugsAndTests.kt +++ b/src/main/java/at/hannibal2/skyhanni/test/SkyHanniDebugsAndTests.kt @@ -11,12 +11,15 @@ import at.hannibal2.skyhanni.features.garden.visitor.GardenVisitorColorNames import at.hannibal2.skyhanni.utils.* import at.hannibal2.skyhanni.utils.ItemUtils.getInternalName import at.hannibal2.skyhanni.utils.ItemUtils.getInternalNameOrNull +import at.hannibal2.skyhanni.utils.ItemUtils.name import at.hannibal2.skyhanni.utils.NEUItems.getNpcPriceOrNull import at.hannibal2.skyhanni.utils.NumberUtil.addSeparators import at.hannibal2.skyhanni.utils.RenderUtils.renderString import at.hannibal2.skyhanni.utils.RenderUtils.renderStringsAndItems import net.minecraft.client.Minecraft +import net.minecraft.client.gui.inventory.GuiContainer import net.minecraft.nbt.NBTTagCompound +import net.minecraftforge.client.event.GuiScreenEvent import net.minecraftforge.common.MinecraftForge import net.minecraftforge.event.entity.player.ItemTooltipEvent import net.minecraftforge.fml.common.eventhandler.SubscribeEvent @@ -230,6 +233,36 @@ class SkyHanniDebugsAndTests { OSUtils.copyToClipboard(builder.toString()) LorenzUtils.chat("§eCopied SkyHanni debug data to clipboard.") } + + fun copyItemInternalName() { + val hand = InventoryUtils.getItemInHand() + if (hand == null) { + LorenzUtils.chat("§cNo item in hand!") + return + } + + val internalName = hand.getInternalNameOrNull() + if (internalName == null) { + LorenzUtils.chat("§cInternal name is null for item ${hand.name}") + return + } + + val rawInternalName = internalName.asString() + OSUtils.copyToClipboard(rawInternalName) + LorenzUtils.chat("§eCopied internal name §7$rawInternalName §eto the clipboard!") + } + } + + @SubscribeEvent + fun onKeybind(event: GuiScreenEvent.KeyboardInputEvent.Post) { + if (!OSUtils.isKeyHeld(SkyHanniMod.feature.dev.copyInternalName)) return + val gui = event.gui as? GuiContainer ?: return + val focussedSlot = gui.slotUnderMouse ?: return + val stack = focussedSlot.stack ?: return + val internalName = stack.getInternalNameOrNull() ?: return + val rawInternalName = internalName.asString() + OSUtils.copyToClipboard(rawInternalName) + LorenzUtils.chat("§eCopied internal name §7$rawInternalName §eto the clipboard!") } @SubscribeEvent diff --git a/src/main/java/at/hannibal2/skyhanni/test/command/CopyItemCommand.kt b/src/main/java/at/hannibal2/skyhanni/test/command/CopyItemCommand.kt index d2f0b60ab..4fc82bbc3 100644 --- a/src/main/java/at/hannibal2/skyhanni/test/command/CopyItemCommand.kt +++ b/src/main/java/at/hannibal2/skyhanni/test/command/CopyItemCommand.kt @@ -1,18 +1,18 @@ package at.hannibal2.skyhanni.test.command import at.hannibal2.skyhanni.test.SkyHanniDebugsAndTests +import at.hannibal2.skyhanni.utils.InventoryUtils import at.hannibal2.skyhanni.utils.ItemUtils.getInternalName_old import at.hannibal2.skyhanni.utils.ItemUtils.getLore import at.hannibal2.skyhanni.utils.LorenzUtils import at.hannibal2.skyhanni.utils.OSUtils -import net.minecraft.client.Minecraft object CopyItemCommand { fun command(args: Array<String>) { try { val resultList = mutableListOf<String>() - val itemStack = Minecraft.getMinecraft().thePlayer.inventory.getCurrentItem()!! + val itemStack = InventoryUtils.getItemInHand() ?: return resultList.add("ITEM LORE") resultList.add("display name: '" + itemStack.displayName.toString() + "'") val itemID = itemStack.getInternalName_old() |
