Fix search item being sent to player inventory

This commit is contained in:
TDSTOS
2026-04-17 07:32:04 +02:00
parent 1569764982
commit fd94310c56
2 changed files with 14 additions and 3 deletions

View File

@@ -33,16 +33,27 @@ class AnvilSearchMenu(
AnvilSearchTracker.register(player, this)
}
fun onClick(event: InventoryClickEvent, view: AnvilView) {
fun onClick(
event: InventoryClickEvent,
view: AnvilView
) {
event.isCancelled = true
if ( event.rawSlot != 2 ) return
val query = view.renameText ?: ""
if ( !player.itemOnCursor.type.isAir ) {
// Output-Slot leeren - verhindert dass das Item clientseitig ins Inventar wandert
view.topInventory.setItem( 2, null )
// Cursor leeren (Fallback für shift-click o.ä.)
if ( !player.itemOnCursor.type.isAir )
{
player.setItemOnCursor(ItemStack( Material.AIR ))
}
// Client-Inventar synchronisieren
player.updateInventory()
AnvilSearchTracker.unregister( player )
player.closeInventory()
returnMenu.applySearch( query )