Fix script break stop if config file not found

This commit is contained in:
Jim Shield
2025-06-28 11:22:12 +01:00
parent d0a09871c7
commit 5a97b8f83a
6 changed files with 123 additions and 3 deletions

101
ui_modules/pedGenerator.lua Normal file
View File

@@ -0,0 +1,101 @@
PedGenerator = {
Helpers = {}
}
local debug = true
local debugPrint = function(...)
if debug then
print("^5PedGen^7:^2", ..., "^7")
end
end
local currentPed = nil
local pedPreview = nil
debugPrint("Module loaded")
PedGenerator.Start = function()
currentPed = PedGenerator.Helpers.pedHandler("mp_m_freemode_01")
end
PedGenerator.Helpers.pedHandler = function(model, properties)
if currentPed then
PedGenerator.Helpers.removeHandlerPed(currentPed)
end
---
local hash = type(model) == 'string' and GetHashKey(model) or model
debugPrint("Requesting Model", "^7"..hash)
RequestModel(hash)
debugPrint("Loading Model...")
while not HasModelLoaded(hash) do Wait(1) end
debugPrint("Creating new ped")
local tempPed = CreatePed(4, hash, 0.0, 0.0, 0.0, 0.0, false, false)
debugPrint("Forcing ped invisiblity")
SetEntityCollision(tempPed, false, true)
SetEntityInvincible(tempPed, true)
NetworkSetEntityInvisibleToNetwork(tempPed, true)
SetEntityCanBeDamaged(tempPed, false)
SetBlockingOfNonTemporaryEvents(tempPed, true)
FreezeEntityPosition(tempPed, true)
SetEntityAlpha(tempPed, 255, false)
SetEntityVisible(tempPed, true, false)
if properties then
debugPrint("Properties found, starting changes")
end
PedGenerator.Helpers.sendPedToFrontend(tempPed)
return tempPed
end
PedGenerator.Helpers.sendPedToFrontend = function(ped)
if pedPreview then
debugPrint("ped exists, triggering removePedFromFrontend")
PedGenerator.Helpers.removePedFromFrontend(pedPreview)
Wait(500)
end
debugPrint("Cloning created ped", ped)
pedPreview = ClonePed(ped, false, true, false)
debugPrint("Activating frontend")
SetFrontendActive(true)
ActivateFrontendMenu(`FE_MENU_VERSION_EMPTY_NO_BACKGROUND`, true, -1)
Wait(100)
SetMouseCursorVisible(false)
local x, y, z = table.unpack(GetEntityCoords(ped))
SetEntityCoords(pedPreview, x, y, z - 10)
FreezeEntityPosition(pedPreview, true)
SetEntityVisible(pedPreview, false, false)
--NetworkSetEntityInvisibleToNetwork(pedPreview, false)
SetPedAsNoLongerNeeded(pedPreview)
debugPrint("Sending Ped to Pausemenu")
GivePedToPauseMenu(pedPreview, 2)
SetPauseMenuPedLighting(true)
SetPauseMenuPedSleepState(true)
end
PedGenerator.Helpers.removePedFromFrontend = function(ped)
DeleteEntity(ped)
SetFrontendActive(false)
end
PedGenerator.Helpers.removeHandlerPed = function(ped)
debugPrint("Removing old ped", ped)
DeletePed(ped)
end
RegisterCommand("pedgen", function(source, args, rawCommand)
PedGenerator.Start()
end, false)
AddEventHandler('onResourceStop', function(r)
if r ~= GetCurrentResourceName() then return end
print("test")
PedGenerator.Helpers.removePedFromFrontend(pedPreview)
SetFrontendActive(false)
end)

View File

@@ -0,0 +1,6 @@
TargetCreator = {}
TargetCreator.Start = function()
end