uyuyorumstore
um-ronin-spawn

Config

Config files of um-ronin-spawn

All config files are in um-ronin-spawn > config.

config > main.lua
return {

    -- Debug prints, and lets um-ronin-spawn-creator (the dev tool) replay the menu with /spawnmenu
    debug = false,

    -- Qbox / QBCore: every job with type = 'leo' counts by itself, this list is only for extras.
    policeJobs = { 'police', 'bcso', 'sasp' },

    -- Characters that own no property only see the housing script's starter apartments and rent one
    -- by picking it. Set in server.cfg: setr um:NewPlayerApartmentInsideStart "true"
    starterApartments = GetConvar('um:NewPlayerApartmentInsideStart', 'false') == 'true',

    -- true: no spawn menu, everyone spawns at their last location
    onlyLastLocation = false,

    -- true: a dead / last-stand character skips everything (house scene, menu, cutscenes) and
    -- spawns at his last location right away. false: he gets the normal spawn menu.
    deadLastLocation = true,

    -- Camera behind the starter apartments screen (xyz + the heading it looks at)
    newCharacter = {
        camera = vec4(-789.42, 341.28, 187.18, 242.95),
        fov = 50.0,
    },

    -- Fallback spawn point when a character has no saved position
    defaultSpawnCoords = vec4(-1037.11, -2736.96, 20.17, 323.76),

    -- Partner invites: /invitepartner <id> asks a player standing nearby, on accept both characters
    partnerInvite = {
        enabled = true,
        command = 'invitepartner',
        forceCommand = 'forceinvitepartner', -- admin (group.admin): pair with any citizenid
        distance = 10.0,                     -- metres the invited player may stand away
        timeoutMs = 60000,                   -- an unanswered invite expires after this
    },

    -- Scene wake up played at every spawn point.
    wakeUpScene = {
        enabled = true,
        scene = 'wakeup',
    },

    -- Cutscenes: after picking where to spawn (last location included)
    wakeUpCutscenes = true,

    -- Holding this key during a cutscene fills it up and skips the scene
    cutsceneSkip = {
        control = 73, -- X, https://docs.fivem.net/docs/game-references/controls/
        label = 'X',  -- shown on the key
        holdMs = 1200,
    },

    -- After the bed scene he walks to the fork of his house (config/houses.lua) with the camera behind him
    introWalk = {
        speed = 1.0,                       -- 1.0 walk, 2.0 run
        windowHoldMs = 2500,               -- left pick: how long he looks out of the window
        windowFadeMs = 2000,               -- left pick: fade to black before he spawns
        spawnBefore = 1.5,                 -- right pick: metres before the door at which he spawns
        camera = {
            offset = vec3(0.0, -1.8, 0.7), -- right / forward / up from him (negative forward = behind)
            fov = 40.0,
        },
        -- A bed with its own `walkCamera` (config/houses.lua): once he walked this far from the bed,
        -- the camera blends from that view to the one above over `ms`
        cameraBlend = {
            afterMetres = 1.0,
            ms = 2500,
        },
    },

    -- How long the location title stays over the spawn point (ms)
    arrivalTitleMs = 6000,

    -- Every scene camera opens on his face and pulls back to the scene's own camera
    sceneCamera = {
        closeUp = 0.30,       -- metres from the face at the start
        pullBackShare = 0.85, -- 0-1, share of the anim the pull-back takes
    },

    -- Bird's-eye camera over a spawn point
    camera = {
        radius = 45.0,   -- metres from the spawn point
        angle = 62,      -- pitch in degrees (90 = straight down)
        turning = true,
        turnSpeed = 4.0, -- degrees per second
    },

    -- Hide / show your hud while the spawn plays
    hideHud = function(bool)
        if bool then
            -- pcall(function() exports['example-hud']:hideHud(true) end)
            return
        end
        -- pcall(function() exports['example-hud']:hideHud(false) end)
    end,

    -- Force weather and time while the spawn plays
    weatherAndTimeForce = {
        enable = true,
        weather = 'RAIN', -- https://docs.fivem.net/natives/?_0x29B487C359E19889
        hour = 23,        -- 0-23
        minute = 30,      -- 0-59
        -- Pause / resume your weather script. qb-weathersync and Renewed-Weathersync both answer
        -- these events. Renewed keeps showing `playerWeather` while it is paused, so it gets ours.
        handler = function(bool, weather)
            if bool then
                LocalPlayer.state:set('playerWeather', weather, false)
                TriggerEvent('qb-weathersync:client:DisableSync')
            else
                TriggerEvent('qb-weathersync:client:EnableSync')
            end
        end
    },
}