@@ -66,19 +66,23 @@ object ContainerPreview : Module(
66
66
if (mc.currentScreen !is GuiContainer ) return @safeListener
67
67
val gui = it.gui as GuiContainer
68
68
if (! Keyboard .isKeyDown(previewLock.key)) {
69
- val slotUnder = gui.slotUnderMouse
70
- if (slotUnder != null && slotUnder.hasStack && ! slotUnder.stack.isEmpty && (slotUnder.stack.item is ItemShulkerBox || slotUnder.stack.item.block == Blocks .ENDER_CHEST )) {
71
- if (stackContainer == null || stackContainer?.parentContainer != slotUnder.stack) {
69
+ gui.slotUnderMouse?.let {slotUnder ->
70
+ if (slotUnder.hasStack && ! slotUnder.stack.isEmpty && (slotUnder.stack.item is ItemShulkerBox || slotUnder.stack.item.block == Blocks .ENDER_CHEST )) {
71
+ if (stackContainer == null || stackContainer?.parentContainer != slotUnder.stack) {
72
+ stackContainer = createPreviewGui(slotUnder.stack, getContainerContents(slotUnder.stack))
73
+ }
74
+ } else stackContainer = null
75
+ stackContainer?.let { sc ->
72
76
val res = ScaledResolution (mc)
73
- val resWidth = res.scaledWidth
74
77
// ensure the preview gui is on screen
75
- val dX = gui.guiLeft + slotUnder.xPos + 16
76
- val previewDrawX = if (dX + previewWidth > resWidth ) res.scaledWidth - previewWidth else dX
77
- val dY = gui.guiTop + slotUnder.yPos + 8
78
+ val dX = it.mouseX + 8
79
+ val previewDrawX = if (dX + previewWidth > res.scaledWidth ) res.scaledWidth - previewWidth else dX
80
+ val dY = it.mouseY
78
81
val previewDrawY = if (dY + previewHeight > res.scaledHeight) res.scaledHeight - previewHeight else dY
79
- stackContainer = createPreviewGui(slotUnder.stack, getContainerContents(slotUnder.stack), previewDrawX, previewDrawY)
82
+ sc.posX = previewDrawX
83
+ sc.posY = previewDrawY
80
84
}
81
- } else stackContainer = null
85
+ }
82
86
}
83
87
stackContainer?.drawScreen(it.mouseX, it.mouseY, it.renderPartialTicks)
84
88
}
@@ -139,15 +143,11 @@ object ContainerPreview : Module(
139
143
140
144
private fun createPreviewGui (
141
145
parentContainer : ItemStack ,
142
- containerContents : MutableList <ItemStack >,
143
- posX : Int ,
144
- posY : Int
146
+ containerContents : MutableList <ItemStack >
145
147
): GuiPreview {
146
148
return GuiPreview (
147
149
PreviewContainer (PreviewInventory (containerContents), 27 ),
148
- parentContainer,
149
- posX,
150
- posY
150
+ parentContainer
151
151
)
152
152
}
153
153
@@ -184,7 +184,9 @@ object ContainerPreview : Module(
184
184
return CachedContainerManager .getEnderChestInventory().toMutableList()
185
185
}
186
186
187
- class GuiPreview (inventorySlotsIn : Container , val parentContainer : ItemStack , val posX : Int , val posY : Int ) : GuiContainer(inventorySlotsIn) {
187
+ class GuiPreview (inventorySlotsIn : Container , val parentContainer : ItemStack ) : GuiContainer(inventorySlotsIn) {
188
+ var posX: Int = 0
189
+ var posY: Int = 0
188
190
init {
189
191
this .mc = Minecraft .getMinecraft()
190
192
this .fontRenderer = this .mc.fontRenderer
0 commit comments