From 35bb878e2d9e9f1c7f776ede704914ba38dbdc8e Mon Sep 17 00:00:00 2001 From: Michachatz <121869403+Michatec@users.noreply.github.com> Date: Fri, 4 Apr 2025 15:29:25 +0200 Subject: [PATCH] Update car_spawner.lua --- car_spawner.lua | 85 +++++++++++++++++++++---------------------------- 1 file changed, 37 insertions(+), 48 deletions(-) diff --git a/car_spawner.lua b/car_spawner.lua index 5768280..7181266 100644 --- a/car_spawner.lua +++ b/car_spawner.lua @@ -1,59 +1,48 @@ -local lastVehicle = nil +local function isAdmin(player) return IsPlayerAceAllowed(player, "admin") end -local function isAdmin(player) - return IsPlayerAceAllowed(player, "admin") +RegisterCommand("car", function(source, args) local playerPed = GetPlayerPed(source) if not isAdmin(source) then TriggerClientEvent("chatMessage", source, "[CarSpawner]", {255, 0, 0}, "❌ Du hast keine Berechtigung, dieses Fahrzeug zu spawnen!") return end + +local vehicleName = args[1] or "adder" +if not IsModelInCdimage(vehicleName) or not IsModelAVehicle(vehicleName) then + TriggerClientEvent("chatMessage", source, "[CarSpawner]", {255, 0, 0}, "❌ Ungültiger Fahrzeugname!") + return end -RegisterCommand("car", function(source, args) - local playerPed = GetPlayerPed(-1) - local playerId = source - if not isAdmin(playerId) then - TriggerEvent("chatMessage", "[CarSpawner]", {255, 0, 0}, "❌ Du hast keine Berechtigung, dieses Fahrzeug zu spawnen!") - return +RequestModel(vehicleName) +while not HasModelLoaded(vehicleName) do + Wait(500) +end + +local playerCoords = GetEntityCoords(playerPed) +local vehicle = CreateVehicle(vehicleName, playerCoords.x + 2, playerCoords.y, playerCoords.z, GetEntityHeading(playerPed), true, false) + +SetPedIntoVehicle(playerPed, vehicle, -1) + +if #args > 1 then + local r, g, b = tonumber(args[2]), tonumber(args[3]), tonumber(args[4]) + if r and g and b then + SetVehicleCustomPrimaryColour(vehicle, r, g, b) end +end - local vehicleName = args[1] or "adder" - if not IsModelInCdimage(vehicleName) or not IsModelAVehicle(vehicleName) then - TriggerEvent("chatMessage", "[CarSpawner]", {255, 0, 0}, "❌ Ungültiger Fahrzeugname!") - return - end +SetEntityAsNoLongerNeeded(vehicle) +SetModelAsNoLongerNeeded(vehicleName) - RequestModel(vehicleName) - while not HasModelLoaded(vehicleName) do - Wait(500) - end +TriggerClientEvent("chatMessage", source, "[CarSpawner]", {0, 255, 0}, "✅ Fahrzeug " .. vehicleName .. " wurde gespawnt!") - local playerCoords = GetEntityCoords(playerPed) - local vehicle = CreateVehicle(vehicleName, playerCoords.x + 2, playerCoords.y, playerCoords.z, GetEntityHeading(playerPed), true, false) - - SetPedIntoVehicle(playerPed, vehicle, -1) - - if #args > 1 then - local r, g, b = tonumber(args[2]), tonumber(args[3]), tonumber(args[4]) - if r and g and b then - SetVehicleColours(vehicle, r, g, b) - end - end - - lastVehicle = vehicle - - SetEntityAsNoLongerNeeded(vehicle) - SetModelAsNoLongerNeeded(vehicleName) - - TriggerEvent("chatMessage", "[CarSpawner]", {0, 255, 0}, "✅ Fahrzeug " .. vehicleName .. " wurde gespawnt!") end, false) -RegisterCommand("delcar", function(source, args) - local playerId = source - if not isAdmin(playerId) then - TriggerEvent("chatMessage", "[CarSpawner]", {255, 0, 0}, "❌ Du hast keine Berechtigung, Fahrzeuge zu löschen!") - return - end +RegisterCommand("delcar", function(source, args) if not isAdmin(source) then TriggerClientEvent("chatMessage", source, "[CarSpawner]", {255, 0, 0}, "❌ Du hast keine Berechtigung, Fahrzeuge zu löschen!") return end + +local playerPed = GetPlayerPed(source) +local playerCoords = GetEntityCoords(playerPed) +local vehicle = GetClosestVehicle(playerCoords.x, playerCoords.y, playerCoords.z, 5.0, 0, 70) + +if vehicle and DoesEntityExist(vehicle) then + DeleteEntity(vehicle) + TriggerClientEvent("chatMessage", source, "[CarSpawner]", {0, 255, 0}, "✅ Das Fahrzeug wurde gelöscht!") +else + TriggerClientEvent("chatMessage", source, "[CarSpawner]", {255, 0, 0}, "❌ Kein Fahrzeug in der Nähe gefunden!") +end - if lastVehicle and DoesEntityExist(lastVehicle) then - DeleteEntity(lastVehicle) - TriggerEvent("chatMessage", "[CarSpawner]", {0, 255, 0}, "✅ Das Fahrzeug wurde gelöscht!") - else - TriggerEvent("chatMessage", "[CarSpawner]", {255, 0, 0}, "❌ Kein Fahrzeug zum Löschen gefunden!") - end end, false)