ed
This commit is contained in:
		
							parent
							
								
									ea67dd5407
								
							
						
					
					
						commit
						b4d6a488f6
					
				
					 1 changed files with 135 additions and 84 deletions
				
			
		|  | @ -170,42 +170,58 @@ if (Config.useContextMenu) then | |||
|  | ||||
| 					local item = transferVehMenu:AddItem(model .. " " .. plate) | ||||
| 					item.closeMenuOnClick = true | ||||
| 					item.OnClick = function() | ||||
| 						local nearbyPlayers = GetNearbyPlayersWithNames(5.0) | ||||
| 						 | ||||
| 						if #nearbyPlayers == 0 then | ||||
| 							Notification("Keine Spieler in der Nähe gefunden") | ||||
| 							return | ||||
| 						end | ||||
| 						 | ||||
| 						-- Spielerauswahl-Menü erstellen | ||||
| 						local playerOptions = {} | ||||
| 						for _, player in ipairs(nearbyPlayers) do | ||||
| 							table.insert(playerOptions, { | ||||
| 								title = player.name, | ||||
| 								description = "Entfernung: " .. math.floor(player.distance * 10) / 10 .. "m", | ||||
| 								serverPlayerId = player.serverId | ||||
| 							}) | ||||
| 						end | ||||
| 						 | ||||
| 						lib.registerMenu({ | ||||
| 							id = 'transfer_vehicle_menu', | ||||
| 							title = 'Fahrzeug übergeben', | ||||
| 							position = 'top-right', | ||||
| 							options = playerOptions, | ||||
| 							onSelect = function(selected) | ||||
| 								local targetPlayer = playerOptions[selected].serverPlayerId | ||||
| 								local success = CB:Trigger("VKC:transferVehicleOwnership", plate, targetPlayer) | ||||
| 								 | ||||
| 								if success then | ||||
| 									Notification("Du hast dein " .. model .. " an " .. playerOptions[selected].title .. " übergeben") | ||||
| 								else | ||||
| 									Notification("Übergabe fehlgeschlagen") | ||||
| 								end | ||||
| 							end | ||||
| 						}) | ||||
| 						 | ||||
| 						lib.showMenu('transfer_vehicle_menu') | ||||
| item.OnClick = function() | ||||
|     local nearbyPlayers = GetNearbyPlayersWithNames(5.0) | ||||
|      | ||||
|     if #nearbyPlayers == 0 then | ||||
|         Notification("Keine Spieler in der Nähe gefunden") | ||||
|         return | ||||
|     end | ||||
|      | ||||
|     -- Spielerauswahl-Menü erstellen | ||||
|     local playerOptions = {} | ||||
|     for _, player in ipairs(nearbyPlayers) do | ||||
|         table.insert(playerOptions, { | ||||
|             title = player.name, | ||||
|             description = "Entfernung: " .. math.floor(player.distance * 10) / 10 .. "m", | ||||
|             metadata = { | ||||
|                 ["Spieler ID"] = player.serverId | ||||
|             }, | ||||
|             args = { | ||||
|                 serverId = player.serverId, | ||||
|                 name = player.name | ||||
|             } | ||||
|         }) | ||||
|     end | ||||
|      | ||||
|     -- Stelle sicher, dass wir mindestens eine Option haben | ||||
|     if #playerOptions == 0 then | ||||
|         Notification("Keine Spieler in der Nähe gefunden") | ||||
|         return | ||||
|     end | ||||
|      | ||||
|     lib.registerMenu({ | ||||
|         id = 'transfer_vehicle_menu', | ||||
|         title = 'Fahrzeug übergeben', | ||||
|         position = 'top-right', | ||||
|         options = playerOptions, | ||||
|         onSelect = function(selected, scrollIndex, args) | ||||
|             if args and args.serverId then | ||||
|                 local targetPlayer = args.serverId | ||||
|                 local success = CB:Trigger("VKC:transferVehicleOwnership", plate, targetPlayer) | ||||
|                  | ||||
|                 if success then | ||||
|                     Notification("Du hast dein " .. model .. " an " .. args.name .. " übergeben") | ||||
|                 else | ||||
|                     Notification("Übergabe fehlgeschlagen") | ||||
|                 end | ||||
|             else | ||||
|                 Notification("Fehler bei der Spielerauswahl") | ||||
|             end | ||||
|         end | ||||
|     }) | ||||
|      | ||||
|     lib.showMenu('transfer_vehicle_menu') | ||||
| 					end | ||||
| 				end | ||||
|  | ||||
|  | @ -484,55 +500,80 @@ function GenerateKeyInventoryNativeUI() | |||
|         submenuTransferVehicle:AddItem(vehItem) | ||||
|     end | ||||
|      | ||||
|     submenuTransferVehicle.OnItemSelect = function(menu, item, index) | ||||
|         local selectedVehicle = vehicleData[index] | ||||
|         local plate = selectedVehicle[1] | ||||
|         local model = GetLabelText(GetDisplayNameFromVehicleModel(selectedVehicle[2])) | ||||
|         if (model == "NULL") then | ||||
|             model = GetDisplayNameFromVehicleModel(selectedVehicle[2]) | ||||
|         end | ||||
|          | ||||
|         -- Menü schließen und Spielerauswahl anzeigen | ||||
|         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" | ||||
|             }) | ||||
|             return | ||||
|         end | ||||
|          | ||||
|         -- Spielerauswahl-Menü erstellen | ||||
|         local playerOptions = {} | ||||
|         for _, player in ipairs(nearbyPlayers) do | ||||
|             table.insert(playerOptions, { | ||||
|                 title = player.name, | ||||
|                 description = "Entfernung: " .. math.floor(player.distance * 10) / 10 .. "m", | ||||
|                 serverPlayerId = player.serverId | ||||
|             }) | ||||
|         end | ||||
|          | ||||
|         lib.registerMenu({ | ||||
|             id = 'transfer_vehicle_menu', | ||||
|             title = 'Fahrzeug übergeben', | ||||
|             position = 'top-right', | ||||
|             options = playerOptions, | ||||
|             onSelect = function(selected) | ||||
|                 local targetPlayer = playerOptions[selected].serverPlayerId | ||||
| submenuTransferVehicle.OnItemSelect = function(menu, item, index) | ||||
|     local selectedVehicle = vehicleData[index] | ||||
|     local plate = selectedVehicle[1] | ||||
|     local model = GetLabelText(GetDisplayNameFromVehicleModel(selectedVehicle[2])) | ||||
|     if (model == "NULL") then | ||||
|         model = GetDisplayNameFromVehicleModel(selectedVehicle[2]) | ||||
|     end | ||||
|      | ||||
|     -- Menü schließen und Spielerauswahl anzeigen | ||||
|     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" | ||||
|         }) | ||||
|         return | ||||
|     end | ||||
|      | ||||
|     -- Spielerauswahl-Menü erstellen | ||||
|     local playerOptions = {} | ||||
|     for _, player in ipairs(nearbyPlayers) do | ||||
|         table.insert(playerOptions, { | ||||
|             title = player.name, | ||||
|             description = "Entfernung: " .. math.floor(player.distance * 10) / 10 .. "m", | ||||
|             metadata = { | ||||
|                 ["Spieler ID"] = player.serverId | ||||
|             }, | ||||
|             args = { | ||||
|                 serverId = player.serverId, | ||||
|                 name = player.name | ||||
|             } | ||||
|         }) | ||||
|     end | ||||
|      | ||||
|     -- Stelle sicher, dass wir mindestens eine Option haben | ||||
|     if #playerOptions == 0 then | ||||
|         lib.notify({ | ||||
|             title = "Fahrzeug übergeben", | ||||
|             description = "Keine Spieler in der Nähe gefunden", | ||||
|             position = "top", | ||||
|             type = "error", | ||||
|             icon = "car" | ||||
|         }) | ||||
|         return | ||||
|     end | ||||
|      | ||||
|     lib.registerMenu({ | ||||
|         id = 'transfer_vehicle_menu', | ||||
|         title = 'Fahrzeug übergeben', | ||||
|         position = 'top-right', | ||||
|         options = playerOptions, | ||||
|         onClose = function() | ||||
|             -- Optional: Öffne das Hauptmenü wieder | ||||
|             GenerateKeyInventoryNativeUI() | ||||
|             keyInvMenuNativeUI:Visible(true) | ||||
|             menuOpen = true | ||||
|         end, | ||||
|         onSelect = function(selected, scrollIndex, args) | ||||
|             if args and args.serverId then | ||||
|                 local targetPlayer = args.serverId | ||||
|                 local success = CB:Trigger("VKC:transferVehicleOwnership", plate, targetPlayer) | ||||
|                  | ||||
|                 if success then | ||||
|                     lib.notify({ | ||||
|                         title = "Fahrzeug übergeben", | ||||
|                         description = "Du hast dein " .. model .. " an " .. playerOptions[selected].title .. " übergeben", | ||||
|                         description = "Du hast dein " .. model .. " an " .. args.name .. " übergeben", | ||||
|                         position = "top", | ||||
|                         type = "success", | ||||
|                         icon = "car" | ||||
|  | @ -546,11 +587,21 @@ function GenerateKeyInventoryNativeUI() | |||
|                         icon = "car" | ||||
|                     }) | ||||
|                 end | ||||
|             else | ||||
|                 lib.notify({ | ||||
|                     title = "Fahrzeug übergeben", | ||||
|                     description = "Fehler bei der Spielerauswahl", | ||||
|                     position = "top", | ||||
|                     type = "error", | ||||
|                     icon = "car" | ||||
|                 }) | ||||
|             end | ||||
|         }) | ||||
|          | ||||
|         lib.showMenu('transfer_vehicle_menu') | ||||
|     end | ||||
|         end | ||||
|     }) | ||||
|      | ||||
|     lib.showMenu('transfer_vehicle_menu') | ||||
| end | ||||
|  | ||||
| 	 | ||||
| 	local submenuShowKeys = menuPoolNativeUI:AddSubMenu(keyInvMenuNativeUI, Config.Strings.NUI.keysTitle, Config.Strings.NUI.keysDesc) | ||||
| 	submenuShowKeys.ParentItem:RightLabel(">") | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Nordi98
						Nordi98