Compare commits

..

2 Commits

Author SHA1 Message Date
Auxilor
bcb9523315 Updated to 6.38.1 2022-07-25 16:51:55 +01:00
Auxilor
43e7972ca3 Improved menu re-renders 2022-07-25 16:51:38 +01:00
2 changed files with 23 additions and 4 deletions

View File

@@ -13,6 +13,7 @@ import org.bukkit.event.EventPriority
import org.bukkit.event.Listener
import org.bukkit.event.inventory.InventoryClickEvent
import org.bukkit.event.inventory.InventoryCloseEvent
import org.bukkit.event.player.PlayerItemHeldEvent
class GUIListener(private val plugin: EcoPlugin) : Listener {
@EventHandler(priority = EventPriority.HIGH)
@@ -45,7 +46,6 @@ class GUIListener(private val plugin: EcoPlugin) : Listener {
}
val menu = inv.getMenu() ?: return
val rendered = inv.asRenderedInventory() ?: return
val (row, column) = MenuUtils.convertSlotToRowColumn(inv.firstEmpty())
@@ -54,8 +54,6 @@ class GUIListener(private val plugin: EcoPlugin) : Listener {
if (!slot.isCaptive) {
event.isCancelled = true
}
plugin.scheduler.run { rendered.render() }
}
@EventHandler(priority = EventPriority.HIGH)
@@ -66,4 +64,25 @@ class GUIListener(private val plugin: EcoPlugin) : Listener {
plugin.scheduler.run { MenuHandler.unregisterInventory(event.inventory) }
}
@EventHandler
fun forceRender(event: InventoryClickEvent) {
val player = event.whoClicked as? Player ?: return
player.renderActiveMenu()
}
@EventHandler
fun forceRender(event: PlayerItemHeldEvent) {
val player = event.player
player.renderActiveMenu()
}
private fun Player.renderActiveMenu() {
val inv = this.openInventory.topInventory
val rendered = inv.asRenderedInventory() ?: return
rendered.render()
plugin.scheduler.run { rendered.render() }
}
}

View File

@@ -1,3 +1,3 @@
version = 6.38.0
version = 6.38.1
plugin-name = eco
kotlin.code.style = official