From 7d0410b025d0a14284d7d53771d3c04becfd94ca Mon Sep 17 00:00:00 2001 From: Miho Date: Mon, 23 Jun 2025 19:27:42 +0200 Subject: [PATCH] resources/[jobs]/[civ]/mh_jobgarage/client/client.lua aktualisiert --- .../[civ]/mh_jobgarage/client/client.lua | 296 +++++++++--------- 1 file changed, 148 insertions(+), 148 deletions(-) diff --git a/resources/[jobs]/[civ]/mh_jobgarage/client/client.lua b/resources/[jobs]/[civ]/mh_jobgarage/client/client.lua index 7d9a56c28..75633a92f 100644 --- a/resources/[jobs]/[civ]/mh_jobgarage/client/client.lua +++ b/resources/[jobs]/[civ]/mh_jobgarage/client/client.lua @@ -1,148 +1,148 @@ -QBCore = exports['qb-core']:GetCoreObject() -isInZone = false -Zone = nil - --- SetPosition -Citizen.CreateThread(function() - while true do - local sleep = 1000 - local ped = PlayerPedId() - local coords = GetEntityCoords(ped) - local isInMarker = false - local Player = QBCore.Functions.GetPlayerData() - - - if Player and Player.job then - for k, v in pairs(Config.Zonen) do - local dist = #(coords - v.Schluesselkasten) - if dist < Config.DrawDistance and Player.job.name == v.Job then - sleep = 0 - DrawMarker(v.Marker.type, v.Schluesselkasten.x, v.Schluesselkasten.y, v.Schluesselkasten.z + 0.7, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, v.Marker.x, v.Marker.y, v.Marker.z, v.Marker.r, v.Marker.g, v.Marker.b, v.Marker.a, false, false, 2, v.Marker.rotate, nil, nil, false) - - if dist < 2.0 then - if not isInZone then - Zone = v - isInZone = true - TextUI(true, "[E] - Schlüsselkasten öffnen.") - end - if IsControlJustReleased(0, 38) then - QBCore.Functions.TriggerCallback('mh_jobgarage:CallVehiclesInfo', function(cb) - OpenMenu(cb) - end, Player.job.name) - end - else - if isInZone then - Zone = nil - isInZone = false - TextUI(false) - end - end - end - - end - end - Citizen.Wait(sleep) - end -end) - -function OpenMenu(vehicles) - local opt = {} - local Player = QBCore.Functions.GetPlayerData() - - if Player.job.grade.level == Zone.Chiefrang then - table.insert(opt, { - title = "Fahrzeug Einstellungen", - description = "Fahrzeuge verwalten", - icon = "gears", - onSelect = function() - lib.hideContext("OpenMenu") - - OpenChiefMenu(vehicles) - end - }) - table.insert(opt, { - title = "", - disabled = true - }) - end - - table.insert(opt, { - title = "Alle Schlüssel zurück geben!", - description = "Gibt alle vorhandenen Schlüssel zurück!", - icon = "keys", - onSelect = function() - TriggerServerEvent('mh_jobgarage:GiveAllKeysBack', vehicles) - end - }) - table.insert(opt, { - title = "", - disabled = true - }) - - if vehicles then - for k, v in pairs(vehicles) do - table.insert(opt, { - title = v.name, - description = v.key_value.."x Schlüssel vorhanden.", - icon = "car", - onSelect = function() - OpenKeyMenu(v) - end - }) - end - end - - lib.registerContext({ - id = 'OpenMenu', - title = "Schlüsselkasten", - options = opt - }) - - lib.showContext('OpenMenu') -end - -function OpenKeyMenu(veh) - local dis = false - local closedVeh = "Nein" - local meta = {{label = "Noch "..veh.key_value.." Schlüssel vorhanden!"}} - if veh.closed == "true" then - dis = true - closedVeh = "Dieses Fahrzeug ist gesperrt!!!" - meta = {{label = "Keine Schlüssel mehr im Kasten!"}} - end - lib.registerContext({ - id = 'OpenKeyMenu', - title = "Schlüsselkasten", - description = "Fahrzeug:"..veh.name.."\nKennzeichen:"..veh.plate.."\nSchlüsselanzahl:"..veh.key_value.."\nGesperrt:"..closedVeh, - icon = "plus", - options = { - { - title = "Schlüssel nehmen", - description = "Gibt dir ein Schlüssel für den "..veh.name, - disabled = dis, - icon = "plus", - onSelect = function() - print("Trigger ADDVEHICLE KEY") - TriggerServerEvent('mh_jobgarage:AddVehicleKey', veh) - end, - metadata = meta - }, - { - title = "", - disabled = true - }, - { - title = "Schlüssel geben", - description = "Nimmt dir ein Schlüssel für den "..veh.name.." ab.", - icon = "minus", - onSelect = function() - print("Trigger DELVEHICLE KEY") - TriggerServerEvent('mh_jobgarage:DelVehicleKey', veh) - end - } - } - }) - - lib.showContext('OpenKeyMenu') -end - +QBCore = exports['qb-core']:GetCoreObject() +isInZone = false +Zone = nil + +-- SetPosition +Citizen.CreateThread(function() + while true do + local sleep = 1000 + local ped = PlayerPedId() + local coords = GetEntityCoords(ped) + local isInMarker = false + local Player = QBCore.Functions.GetPlayerData() + + + if Player and Player.job then + for k, v in pairs(Config.Zonen) do + local dist = #(coords - v.Schluesselkasten) + if dist < Config.DrawDistance and Player.job.name == v.Job then + sleep = 0 + DrawMarker(v.Marker.type, v.Schluesselkasten.x, v.Schluesselkasten.y, v.Schluesselkasten.z + 0.7, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, v.Marker.x, v.Marker.y, v.Marker.z, v.Marker.r, v.Marker.g, v.Marker.b, v.Marker.a, false, false, 2, v.Marker.rotate, nil, nil, false) + + if dist < 2.0 then + if not isInZone then + Zone = v + isInZone = true + TextUI(true, "[E] - Schlüsselkasten öffnen.") + end + if IsControlJustReleased(0, 38) then + QBCore.Functions.TriggerCallback('mh_jobgarage:CallVehiclesInfo', function(cb) + OpenMenu(cb) + end, Player.job.name) + end + else + if isInZone then + Zone = nil + isInZone = false + TextUI(false) + end + end + end + + end + end + Citizen.Wait(sleep) + end +end) + +function OpenMenu(vehicles) + local opt = {} + local Player = QBCore.Functions.GetPlayerData() + + if Player.job.grade.level >= Zone.Chiefrang then + table.insert(opt, { + title = "Fahrzeug Einstellungen", + description = "Fahrzeuge verwalten", + icon = "gears", + onSelect = function() + lib.hideContext("OpenMenu") + + OpenChiefMenu(vehicles) + end + }) + table.insert(opt, { + title = "", + disabled = true + }) + end + + table.insert(opt, { + title = "Alle Schlüssel zurück geben!", + description = "Gibt alle vorhandenen Schlüssel zurück!", + icon = "keys", + onSelect = function() + TriggerServerEvent('mh_jobgarage:GiveAllKeysBack', vehicles) + end + }) + table.insert(opt, { + title = "", + disabled = true + }) + + if vehicles then + for k, v in pairs(vehicles) do + table.insert(opt, { + title = v.name, + description = v.key_value.."x Schlüssel vorhanden.", + icon = "car", + onSelect = function() + OpenKeyMenu(v) + end + }) + end + end + + lib.registerContext({ + id = 'OpenMenu', + title = "Schlüsselkasten", + options = opt + }) + + lib.showContext('OpenMenu') +end + +function OpenKeyMenu(veh) + local dis = false + local closedVeh = "Nein" + local meta = {{label = "Noch "..veh.key_value.." Schlüssel vorhanden!"}} + if veh.closed == "true" then + dis = true + closedVeh = "Dieses Fahrzeug ist gesperrt!!!" + meta = {{label = "Keine Schlüssel mehr im Kasten!"}} + end + lib.registerContext({ + id = 'OpenKeyMenu', + title = "Schlüsselkasten", + description = "Fahrzeug:"..veh.name.."\nKennzeichen:"..veh.plate.."\nSchlüsselanzahl:"..veh.key_value.."\nGesperrt:"..closedVeh, + icon = "plus", + options = { + { + title = "Schlüssel nehmen", + description = "Gibt dir ein Schlüssel für den "..veh.name, + disabled = dis, + icon = "plus", + onSelect = function() + print("Trigger ADDVEHICLE KEY") + TriggerServerEvent('mh_jobgarage:AddVehicleKey', veh) + end, + metadata = meta + }, + { + title = "", + disabled = true + }, + { + title = "Schlüssel geben", + description = "Nimmt dir ein Schlüssel für den "..veh.name.." ab.", + icon = "minus", + onSelect = function() + print("Trigger DELVEHICLE KEY") + TriggerServerEvent('mh_jobgarage:DelVehicleKey', veh) + end + } + } + }) + + lib.showContext('OpenKeyMenu') +end +