⚙️Configuration

Configuration guide of Busker System System.


Config.lua

STG = {}

STG.Framework = "auto" -- Determines which framework to use: auto, esx, or qb
STG.MoneyType = "$"

STG.Locales = {}
STG.Language = "en" -- en, de, fr, es, pt, it, nl, pl, sv, ar, jp, zh
STG.DonateModel = "qua_guitar_case"
STG.Distance = 20 -- maximum distance limit from the guitar, if exceeded, the guitar will be deleted
STG.songDistance = 20.0 -- distance at which the music can be heard
STG.DisableMinigame = true -- disable the minigame and disable leveling system

STG.Notify = function(message)
    lib.notify({
        title = getMessage('notify_title'),
        description = message,
        type = "info"
    })
end

STG.HelpNotify = function(message)
    lib.showTextUI(message, {
        position = "right-center",
        icon = 'guitar',
        style = {
            borderRadius = 1,
            whiteSpace = 'pre-line'
        }
    })
end

STG.HideHelpNotify = function()
    lib.hideTextUI()
end

STG.Multiple = {
    [1] = {
        x = 1,
        nextMultiple = 20, -- how many notes to press to move to the next multiplier
        maxMiss = 10, -- how many notes you miss determines how many you fail.
        loopSpeed = 1000 -- determines the reproduction rate of the notes (milli second 1000 = 1 second)
    },
    [2] = {
        x = 2,
        maxMiss = 13, -- how many notes you miss determines how many you fail.
        nextMultiple = 25, -- how many notes to press to move to the next multiplier
        loopSpeed = 800 -- determines the reproduction rate of the notes (milli second 1000 = 1 second)
    },
    [3] = {
        x = 3,
        maxMiss = 16, -- how many notes you miss determines how many you fail.
        nextMultiple = 30, -- how many notes to press to move to the next multiplier
        loopSpeed = 700 -- determines the reproduction rate of the notes (milli second 1000 = 1 second)
    },
    [4] = {
        x = 4,
        maxMiss = 18, -- how many notes you miss determines how many you fail.
        nextMultiple = 35, -- how many notes to press to move to the next multiplier
        loopSpeed = 600 -- determines the reproduction rate of the notes (milli second 1000 = 1 second)
    },
    [5] = {
        x = 5,
        maxMiss = 20, -- how many notes you miss determines how many you fail.
        loopSpeed = 500 -- determines the reproduction rate of the notes (milli second 1000 = 1 second)
    },
}

STG.XP = {
    [1] = {
        level = 1,
        xp = 250,
        earnXP = 4
    },
    [2] = {
        level = 2,
        xp = 750,
        earnXP = 7
    },
    [3] = {
        level = 3,
        xp = 1200,
        earnXP = 12
    },
    [4] = {
        level = 4,
        xp = 2000,
        earnXP = 17
    },
    [5] = {
        level = 5,
    }
}

STG.MusicLibrary = {
    [1] = {
        label = "Undertale - Memories",
        src = "undertale.mp3",
        level = 1
    },
    [2] = {
        label = "Ramin Djawadi - Game of Thrones",
        src = "ramin.mp3",
        level = 2
    },
    [3] = {
        label = "Nirvana - Smells Like Teen Spirit",
        src = "nirvana.mp3",
        level = 3
    },
    [4] = {
        label = "The Animals - House Of The Rising Sun",
        src = "animals.mp3",
        level = 4
    },
    [5] = {
        label = "Simon and Garfunkel - The Sound of Silence",
        src = "simon.mp3",
        level = 5
    }
}

function getFramework()
    if STG.Framework == "esx" then
        return exports['es_extended']:getSharedObject(), "esx"
    elseif STG.Framework == "qb" then
        return exports["qb-core"]:GetCoreObject(), "qb"
    elseif STG.Framework == "auto" then
        if GetResourceState('qb-core') == 'started' then
            return exports["qb-core"]:GetCoreObject(), "qb"
        elseif GetResourceState('es_extended') == 'started' then
            return exports['es_extended']:getSharedObject(), "esx"
        end
    end
end

Last updated