@@ -61,24 +61,34 @@ object ContainerPreview : Module(
6161 private var stackContainer: GuiPreview ? = null
6262
6363 init {
64-
6564 safeListener<GuiScreenEvent .DrawScreenEvent .Post > {
6665 if (mc.currentScreen !is GuiContainer ) return @safeListener
6766 val gui = it.gui as GuiContainer
67+
6868 if (! Keyboard .isKeyDown(previewLock.key)) {
69- gui.slotUnderMouse?.let {slotUnder ->
70- if (slotUnder.hasStack && ! slotUnder.stack.isEmpty && (slotUnder.stack.item is ItemShulkerBox || slotUnder.stack.item.block == Blocks .ENDER_CHEST )) {
69+ gui.slotUnderMouse?.let { slotUnder ->
70+ if (slotUnder.hasStack
71+ && ! slotUnder.stack.isEmpty
72+ && (slotUnder.stack.item is ItemShulkerBox || slotUnder.stack.item.block == Blocks .ENDER_CHEST )
73+ ) {
7174 if (stackContainer == null || stackContainer?.parentContainer != slotUnder.stack) {
7275 stackContainer = createPreviewGui(slotUnder.stack, getContainerContents(slotUnder.stack))
7376 }
74- } else stackContainer = null
77+ } else {
78+ stackContainer = null
79+ }
80+
7581 stackContainer?.let { sc ->
7682 val res = ScaledResolution (mc)
7783 // ensure the preview gui is on screen
7884 val dX = it.mouseX + 8
79- val previewDrawX = if (dX + previewWidth > res.scaledWidth) res.scaledWidth - previewWidth else dX
85+ val previewDrawX = if (dX + previewWidth > res.scaledWidth) {
86+ res.scaledWidth - previewWidth
87+ } else dX
8088 val dY = it.mouseY
81- val previewDrawY = if (dY + previewHeight > res.scaledHeight) res.scaledHeight - previewHeight else dY
89+ val previewDrawY = if (dY + previewHeight > res.scaledHeight) {
90+ res.scaledHeight - previewHeight
91+ } else dY
8292 sc.posX = previewDrawX
8393 sc.posY = previewDrawY
8494 }
@@ -100,7 +110,8 @@ object ContainerPreview : Module(
100110 if (! itemFrames) return @safeListener
101111 mc.renderManager.pointedEntity?.let { pe ->
102112 if (pe !is EntityItemFrame ) return @safeListener
103- if (! (pe.displayedItem.item.block is BlockShulkerBox || pe.displayedItem.item.block is BlockEnderChest )) return @safeListener
113+ if (! (pe.displayedItem.item.block is BlockShulkerBox
114+ || pe.displayedItem.item.block is BlockEnderChest )) return @safeListener
104115 val posX = pe.posX + (pe.facingDirection?.xOffset ? : 0 ) * 0.1
105116 val posY = pe.posY + (pe.facingDirection?.yOffset ? : 0 ) * 0.1
106117 val posZ = pe.posZ + (pe.facingDirection?.zOffset ? : 0 ) * 0.1
@@ -187,6 +198,7 @@ object ContainerPreview : Module(
187198 class GuiPreview (inventorySlotsIn : Container , val parentContainer : ItemStack ) : GuiContainer(inventorySlotsIn) {
188199 var posX: Int = 0
189200 var posY: Int = 0
201+
190202 init {
191203 this .mc = Minecraft .getMinecraft()
192204 this .fontRenderer = this .mc.fontRenderer
0 commit comments