From 323a388a5d898a61f0d6906562f41f13e4602646 Mon Sep 17 00:00:00 2001 From: Nordi98 Date: Wed, 6 Aug 2025 14:48:20 +0200 Subject: [PATCH] ed --- .../[carscripts]/sn_vehicleKey/client.lua | 68 +++++++------------ 1 file changed, 24 insertions(+), 44 deletions(-) diff --git a/resources/[carscripts]/sn_vehicleKey/client.lua b/resources/[carscripts]/sn_vehicleKey/client.lua index cab3a9cfc..70ee483f1 100644 --- a/resources/[carscripts]/sn_vehicleKey/client.lua +++ b/resources/[carscripts]/sn_vehicleKey/client.lua @@ -510,68 +510,48 @@ submenuTransferVehicle.OnItemSelect = function(menu, item, index) model = GetDisplayNameFromVehicleModel(selectedVehicle[2]) end - -- Menü schließen - menuPoolNativeUI:CloseAllMenus() - menuOpen = false - -- Spieler in der Nähe abrufen local nearbyPlayers = GetNearbyPlayersWithNames(5.0) if #nearbyPlayers == 0 then - lib.notify({ - title = "Fahrzeug übergeben", - description = "Keine Spieler in der Nähe gefunden", - position = "top", - type = "error", - icon = "car" - }) + Notification("Keine Spieler in der Nähe gefunden") return end - -- Erstelle eine Liste von Spielern für den Dialog - local playerList = {} - for i, player in ipairs(nearbyPlayers) do - playerList[i] = player.name .. " (ID: " .. player.serverId .. ", Entfernung: " .. math.floor(player.distance * 10) / 10 .. "m)" + -- Erstelle ein neues NativeUI-Menü für die Spielerauswahl + local playerSelectMenu = NativeUI.CreateMenu("Spieler auswählen", "Wähle einen Spieler für die Fahrzeugübergabe") + menuPoolNativeUI:Add(playerSelectMenu) + + for _, player in ipairs(nearbyPlayers) do + local playerItem = NativeUI.CreateItem(player.name, "Entfernung: " .. math.floor(player.distance * 10) / 10 .. "m") + playerSelectMenu:AddItem(playerItem) end - -- Zeige einen Dialog mit Spielerauswahl - local input = lib.callback.await('ox_lib:inputDialog', false, { - { - type = 'select', - label = 'Wähle einen Spieler', - description = 'Wähle einen Spieler, an den du dein ' .. model .. ' übergeben möchtest', - options = playerList, - required = true - } - }) - - if input and input[1] then - local selectedIndex = input[1] - local targetPlayer = nearbyPlayers[selectedIndex].serverId - + playerSelectMenu.OnItemSelect = function(menu, item, index) + local targetPlayer = nearbyPlayers[index].serverId local success = CB:Trigger("VKC:transferVehicleOwnership", plate, targetPlayer) if success then - lib.notify({ - title = "Fahrzeug übergeben", - description = "Du hast dein " .. model .. " an " .. nearbyPlayers[selectedIndex].name .. " übergeben", - position = "top", - type = "success", - icon = "car" - }) + Notification("Du hast dein " .. model .. " an " .. nearbyPlayers[index].name .. " übergeben") else - lib.notify({ - title = "Fahrzeug übergeben", - description = "Übergabe fehlgeschlagen", - position = "top", - type = "error", - icon = "car" - }) + Notification("Übergabe fehlgeschlagen") end + + menuPoolNativeUI:CloseAllMenus() + menuOpen = false end + + playerSelectMenu.OnMenuClosed = function(menu) + menuOpen = false + end + + menuPoolNativeUI:CloseAllMenus() + playerSelectMenu:Visible(true) + menuOpen = true end + local submenuShowKeys = menuPoolNativeUI:AddSubMenu(keyInvMenuNativeUI, Config.Strings.NUI.keysTitle, Config.Strings.NUI.keysDesc) submenuShowKeys.ParentItem:RightLabel(">")