From 29c786ff04bf746e31ca95075102ba4398dd3dac Mon Sep 17 00:00:00 2001 From: Nordi98 Date: Sun, 20 Jul 2025 20:25:30 +0200 Subject: [PATCH] ed --- .../[crime]/nordi_containerheist/config.lua | 2 +- resources/[tools]/dialog/client/main.lua | 148 ++++-------------- resources/[tools]/dialog/client/test.lua | 87 ---------- 3 files changed, 31 insertions(+), 206 deletions(-) delete mode 100644 resources/[tools]/dialog/client/test.lua diff --git a/resources/[jobs]/[crime]/nordi_containerheist/config.lua b/resources/[jobs]/[crime]/nordi_containerheist/config.lua index b2bf49a12..104a77349 100644 --- a/resources/[jobs]/[crime]/nordi_containerheist/config.lua +++ b/resources/[jobs]/[crime]/nordi_containerheist/config.lua @@ -33,7 +33,7 @@ noTools = "Du hast nicht das benötigte Werkzeug!", cooldown = "Du musst warten, bevor du den nächsten Überfall starten kannst!", globalCooldown = "Diese Art von Überfall ist derzeit gesperrt!", notEnoughPolice = "Es sind nicht genug Polizisten in der Stadt!", -policeMessage = "Container Einbruch in der Nähe von %s", -- Diese Zeile fehlt +policeMessage = "Einbruch in der Nähe von %s", -- Diese Zeile fehlt alreadyRobbed = "Dieser Container wurde bereits kürzlich ausgeraubt!", } diff --git a/resources/[tools]/dialog/client/main.lua b/resources/[tools]/dialog/client/main.lua index 49393e19f..ff9c12284 100644 --- a/resources/[tools]/dialog/client/main.lua +++ b/resources/[tools]/dialog/client/main.lua @@ -1,125 +1,37 @@ -Open = false -cam = nil -Peds = {} -local Actions = {} +-- Replace the existing onResourceStart event handler with this: +AddEventHandler('onResourceStart', function(resourceName) + if (GetCurrentResourceName() == resourceName) then + -- Use next() instead of # to check if the table has any entries + if next(Config.peds) ~= nil then + print("Resource started, spawning peds") + SpawnPeds() + else + print("Resource started, but Config.peds is empty") + end + end +end) +-- Also update the framework loading event handler: if Config.FrameworkLoadinEvent ~= '' then RegisterNetEvent(Config.FrameworkLoadinEvent, function() - SpawnPeds() + print("Framework loading event triggered") + if next(Config.peds) ~= nil then + print("Spawning peds after framework loaded") + SpawnPeds() + else + print("Framework loaded, but Config.peds is empty") + end end) end -AddEventHandler('onResourceStart', function(resourceName) - if (GetCurrentResourceName() == resourceName) then - if #Config.peds ~= 0 then SpawnPeds() end +-- Add a debug command to help troubleshoot +RegisterCommand('debugpeds', function() + print("Debug peds command triggered") + local count = 0 + for k, v in pairs(Config.peds) do + count = count + 1 + print("Found ped: " .. k) end -end) - ----@param ped number # The id of the ped ----@param data table # The data for the interaction ----@param zoom number # Camera zoom level (optional, default: 40.0) ----@param x number # Camera X position (optional, default: 0) ----@param y number # Camera Y position (optional, default: 1.5) ----@param z number # Camera Z position (optional, default: 0.3) ----@param rotX number # Camera X rotation (optional, default: 0.0) ----@param rotY number # Camera Y rotation (optional, default: 0.0) ----@param rotZ number # Camera Z rotation (optional, default: GetEntityHeading(ped) + 180) -OpenDialog = function(ped, data, zoom, x, y, z, rotX, rotY, rotZ) - -- Setting defaults - local newX, newY, newZ = x or 0, y or 1.5, z or 0.3 - local newRotX, newRotY, newRotZ = rotX or 0.0, rotY or 0.0, rotZ or GetEntityHeading(ped) + 180 - local fov = zoom or 40.0 - - local coords = GetOffsetFromEntityInWorldCoords(ped, newX, newY, newZ) - - -- camera setup - cam = CreateCam('DEFAULT_SCRIPTED_CAMERA', true) - SetEntityLocallyInvisible(PlayerPedId()) - SetCamActive(cam, true) - RenderScriptCams(true, true, 500, true, true) - SetCamCoord(cam, coords.x, coords.y, coords.z + 0.2) - SetCamRot(cam, newRotX, newRotY, newRotZ, 5) - SetCamFov(cam, fov) - - local Dialog = data - - local function extractEvents(tbl) - for k, v in pairs(tbl) do - if type(v) == "table" then - extractEvents(v) - elseif k == "event" and type(v) == "string" then - Actions[v] = v - end - end - end - - extractEvents(Dialog) - - SetNuiFocus(true, true) - SendNUIMessage({ - type = 'New', - data = data - }) - Open = true - SetInvisible() -end - -SetDialog = function(data) - SendNUIMessage({ - type = 'Set', - data = data - }) -end - -CloseDialog = function() - Open = false - SendNUIMessage({ - type = 'Close', - }) -end - -SpawnPedByID = function(id, data) - Peds[id] = data - SpawnPed(id, data) -end - -DeletePedByID = function(id) - if Peds[id].ped then - exports['qb-target']:RemoveTargetEntity(Peds[id].ped) - DeleteEntity(Peds[id].ped) - Peds[id] = nil - end -end - -RegisterNuiCallback("click", function(data, cb) - if data.data then - SendNUIMessage({ - type = 'Continue', - data = data.data - }) - cb(false) - return - end - - if data.close then - SetNuiFocus(false, false) - if cam and DoesCamExist(cam) then - RenderScriptCams(false, true, 500, true, true) - DestroyCam(cam, true) - end - CloseDialog() - end - - if Actions[data.event] then - if data.server then - TriggerServerEvent(Actions[data.event], data) - else - TriggerEvent(Actions[data.event], data) - end - end -end) - -exports('OpenDialog', OpenDialog) -exports('SetDialog', SetDialog) -exports('CloseDialog', CloseDialog) -exports('SpawnPed', SpawnPedByID) \ No newline at end of file + print("Total peds in config: " .. count) + SpawnPeds() +end, false) diff --git a/resources/[tools]/dialog/client/test.lua b/resources/[tools]/dialog/client/test.lua deleted file mode 100644 index 202261536..000000000 --- a/resources/[tools]/dialog/client/test.lua +++ /dev/null @@ -1,87 +0,0 @@ - -RegisterCommand('deleteped', function() - DeletePedByID('test') -end, false) - -RegisterCommand('spawnped', function() - SpawnPedByID('test', { - label = 'Talk to stranger', - icon = 'fa-solid fa-comment', - model = "csb_avon", - coords = vector3(165.48, 6612.81, 31.9), - heading = 170, - data = { - firstname = 'John', - lastname = 'Doe', - text = 'Hey bud, how ya doin.', - buttons = { - { - text = 'Im ok, how are you?', - data = { - text = 'Im cool rn, see you around!', - buttons = { - { - text = 'Se ya', - close = true - }, - } - } - }, - { - text = 'No sorry, im gonna leave', - close = true - }, - } - } - }) -end, false) - -RegisterNetEvent('con:mechanic', function(ped) - rep = 1 - data = { - firstname = 'John', - lastname = 'Doe', - text = 'Hey bud, what can i do for you', - type = 'Mechanic', - rep = rep, - buttons = { - { text = "I wanna clock in", data = { - text = 'Alright', - buttons = { - { text = 'Clock in/out', event = 'con:clockin', close = true }, - { text = 'Whatever, changed my mind', event = 'con:back' }, - } - }}, - { text = "I'm gonna leave", close = true }, - } - } - OpenDialog(ped, data) -end) - -RegisterNetEvent('con:back', function() - data = { - firstname = 'John', - lastname = 'Doe', - text = 'Hey bud, what can i do for you', - type = 'Mechanic', - rep = '2', - buttons = { - { text = "I wanna clock in", data = { - text = 'Alright', - buttons = { - { text = 'Clock in/out', event = 'con:clockin', close = true }, - { text = 'Whatever changed my mind', event = 'con:back' }, - } - } - }, - { text = "I'm gonna leave", close = true }, - } - } - - SetDialog(data) -end) - -RegisterNetEvent('con:clockin', function() - print('123') - TriggerEvent('QBCore:Notify', "clocked in", 'success') -end) \ No newline at end of file