Main/resources/[carscripts]/mh_garage/client/stored.lua

109 lines
4.9 KiB
Lua
Raw Normal View History

2025-06-08 16:20:16 +02:00
RegisterNetEvent('mh_garage:storeVehicle')
AddEventHandler('mh_garage:storeVehicle', function(zone)
2025-06-08 17:50:41 +02:00
print("Trigger Stored Vehicle...")
print(json.encode(zone))
2025-06-08 16:20:16 +02:00
local coords = GetEntityCoords(PlayerPedId())
local vehicles = GetGamePool('CVehicle')
2025-06-08 18:14:48 +02:00
local random = SelectName()
2025-06-08 16:20:16 +02:00
local opt = {}
for i = 1, #vehicles, 1 do
2025-06-08 18:08:49 +02:00
local veh_coords = GetEntityCoords(vehicles[i])
2025-06-08 16:20:16 +02:00
local distance = #(veh_coords - coords)
if distance < 40.0 then
local mods = QBCore.Functions.GetVehicleProperties(vehicles[i])
table.insert(opt, {
title = "Kennzeichen: "..mods.plate,
2025-06-08 18:34:28 +02:00
description = GetRandomCarDescription(),
2025-06-08 16:20:16 +02:00
icon = "car",
onSelect = function()
2025-06-08 19:23:48 +02:00
if zone.price ~= nil then
2025-06-08 19:18:00 +02:00
lib.hideContext("StoredVehicles")
2025-06-08 19:19:24 +02:00
lib.registerContext({
2025-06-08 19:18:00 +02:00
id = "thisVehicle",
title = random.name,
options = {
{title = "Kosten: "..zone.price},
{title = ""},
{
title = "Akzeptieren",
description = "Geld wird vom Bankkonto abgebucht!",
onSelect = function()
lib.hideContext("thisVehicle")
StoredVehicle(vehicles[i], zone)
end
},
{
title = "Abbrechen",
description = "Das ist sehr Schade,",
icon = "close",
onSelect = function()
lib.hideContext("thisVehicle")
end
}
}
2025-06-08 16:20:16 +02:00
})
2025-06-08 19:18:00 +02:00
lib.showContext("thisVehicle")
2025-06-08 19:23:48 +02:00
else
StoredVehicle(vehicles[i], zone)
2025-06-08 16:20:16 +02:00
end
end
})
2025-06-08 17:50:41 +02:00
lib.registerContext({
id = "StoredVehicles",
2025-06-08 18:26:26 +02:00
title = random.name.."\n\n"..random.description,
2025-06-08 17:58:14 +02:00
options = opt
2025-06-08 17:50:41 +02:00
})
2025-06-08 17:56:10 +02:00
lib.showContext("StoredVehicles")
2025-06-08 16:20:16 +02:00
end
end
2025-06-08 17:50:41 +02:00
end)
2025-06-08 19:57:57 +02:00
function StoredVehicle(veh, zone)
end
2025-06-08 17:50:41 +02:00
function SelectName()
local names = {
2025-06-08 18:14:48 +02:00
{name = "Garagen-Guru",
description = "passt auf, dass keiner falsch parkt, Schranken nicht durchdrehen und Autos nicht fliegen!"},
{name = "Torflüsterer",
description = "Redet Schranken gut zu wenn diese wieder nicht funktionieren."},
{name = "Parkplatz-Papst",
description = "segnet jedes Auto, das diese heilige Halle betritt. Kein Ölverlust ohne dein Amen!"},
{name = "Schranken-Schamane",
description = "Elektronik und Technik? Kein Problem! Ich kontrolliere den Strom der Schranken mit reiner Willenskraft und Kabelbinder!"},
{name = "Chef vom Schuppen",
description = "Wer falsch parkt, kriegt nicht den Abschleppdienst, sondern eine Ansprache. Kurz. Hart. Legendär!"}
2025-06-08 17:50:41 +02:00
}
2025-06-08 18:14:48 +02:00
return names[math.random(1, #names)]
2025-06-08 18:34:28 +02:00
end
function GetRandomCarDescription()
local descriptions = {
"Das Auto für alle, die beim Beschleunigen mehr Spaß haben als beim Ankommen.",
"Wenn du ein Auto suchst, das schneller fährt als dein WiFi, bist du hier richtig.",
"Nicht das schnellste Auto, aber hey, es hat vier Räder und eine Hupe!",
"Das einzig wahre Fahren keine GPS-Fehler, nur pure Straßenmagie.",
"Mit diesem Auto wirst du die Straße genauso lieben wie das Benzin in deinem Tank.",
"Fahr einfach, und schau, wie viele Leute sich fragen, ob du gerade von der Rennstrecke kommst.",
"Dieses Auto bringt mehr Nervenkitzel als ein Achterbahn-Abenteuer!",
"Dieses Fahrzeug hat mehr Charakter als deine letzte Beziehung.",
"Es ist nicht das teuerste Auto, aber es fährt immer noch besser als deine Laune nach dem Montagmorgen!",
"Mit diesem Wagen wirst du zur Legende oder zumindest zum König des Parkhauses.",
"Schneller als dein Chefs Auto, langsamer als dein Instagram-Feed.",
"Wenn der Sound des Motors dich mehr motiviert als dein Wecker am Morgen!",
"Sicheres Fahren ist wichtig. Aber Spaß haben das ist die wahre Kunst!",
"Nicht der neueste Sportwagen, aber dafür ein echter Klassiker auf der Straße.",
"Weniger PS als dein Laptop, aber hey, er fährt!"
}
-- Zufällige Beschreibung auswählen
local randomIndex = math.random(1, #descriptions)
-- Beschreibung zurückgeben
return descriptions[randomIndex]
2025-06-08 17:50:41 +02:00
end