56 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
| local QBCore = exports['qb-core']:GetCoreObject()
 | |
| 
 | |
| RegisterServerEvent('kennzeichen:updatePlate', function(netVeh, newPlate)
 | |
|     local src = source
 | |
|     local Player = QBCore.Functions.GetPlayer(src)
 | |
|     local veh = NetworkGetEntityFromNetworkId(netVeh)
 | |
|     local oldPlate = GetVehicleNumberPlateText(veh)
 | |
| 
 | |
|     exports.oxmysql:execute('SELECT vehicle FROM player_vehicles WHERE plate = ? AND citizenid = ?', {
 | |
|         oldPlate, Player.PlayerData.citizenid
 | |
|     }, function(result)
 | |
|         if result[1] then
 | |
|             local jsonData = result[1].vehicle
 | |
|             if not jsonData then
 | |
|                 print("Fehler: Keine Fahrzeugdaten in der Datenbank.")
 | |
|                 return
 | |
|             end
 | |
| 
 | |
|             local vehicleData = json.decode(jsonData)
 | |
|             if not vehicleData then
 | |
|                 print("Warnung: Fahrzeugdaten konnten nicht geparsed werden. Standarddaten werden verwendet.")
 | |
|                 vehicleData = {
 | |
|                     plate = oldPlate,
 | |
|                     model = GetEntityModel(veh),
 | |
|                     mods = {}
 | |
|                 }
 | |
|             end
 | |
| 
 | |
|             vehicleData.plate = newPlate
 | |
| 
 | |
|             exports.oxmysql:update('UPDATE player_vehicles SET plate = ?, vehicle = ? WHERE plate = ? AND citizenid = ?', {
 | |
|                 newPlate, json.encode(vehicleData), oldPlate, Player.PlayerData.citizenid
 | |
|             }, function(affectedRows)
 | |
|                 if affectedRows > 0 then
 | |
|                     print(("Kennzeichen erfolgreich aktualisiert: %s ? %s"):format(oldPlate, newPlate))
 | |
|                 end
 | |
|             end)
 | |
| 
 | |
|             TriggerClientEvent('kennzeichen:applyPlate', -1, netVeh, newPlate)
 | |
|         else
 | |
|             print("Fahrzeug nicht gefunden")
 | |
|         end
 | |
|     end)
 | |
| end)
 | |
| 
 | |
| QBCore.Functions.CreateUseableItem("kennzeichen_tool", function(src)
 | |
|     TriggerClientEvent("kennzeichen:useTool", src)
 | |
| end)
 | |
| 
 | |
| QBCore.Functions.CreateUseableItem("tuch", function(src)
 | |
|     TriggerClientEvent("kennzeichen:useTuch", src)
 | |
| end)
 | |
| 
 | |
| RegisterServerEvent('kennzeichen:syncCover', function(netVeh, state)
 | |
|     TriggerClientEvent('kennzeichen:applyCover', -1, netVeh, state)
 | |
| end)
 | 
