New Website Sale - 15% OFF everything

๐Ÿ› ๏ธ Configuration

Main Configuration (sh.main.lua)

Basic Settings

Lua
Config.MenuCommand = "skillSelection"  -- Command to open menu (string or false)
Config.Keybind = "F6"                 -- Keybind to open menu (string or false)

Skill Tree Settings

Lua
Config.UseDataFromSkillTree = false  -- true/false

Use data about unlocked skills from the skill tree

Skill Tree Connection

Abilities

Lua
Config.Abilities = {
    ['wizard'] = {
        name = "Wizard",
        displayOrder = 1,

Hotbar settings

Lua
Config.UseBuildInHotBar = true   --- true/false

Use the build in hotbar, if set to false you can use your own hotba if you are using custom hotbar use client event to listen for hotbar changes

Lua
RegisterNetEvent('devhub_skillSelection:client:syncSlots', function(data) end) 

data is a table with structure like this:

Lua
{
   [2] = { -- slot 2
         category = "wizard", 
         uid = "water_spell", 
         label = "Water spell", 
         icon = "fas fa-user"
   }, 
   [6] = { -- slot 6
         category = "vampire", 
         uid = "vampire_spell", 
         label = "Vampire spell", 
         icon = "fas fa-user
   },  
}

Lua
Config.DisplayHotBarOnScriptLoad = true   --- true/false

Display the hotbar on script load, if set to false you can set when hotbar should be displayed using client event:

Lua
TriggerEvent('devhub_skillSelection:client:hotBarDisplayStatus', true)

If you are using custom hotbar you also need to set the hotbar slots.

Lua
Config.HotBarSlots = {
    { slotKey = "1", slotLabel = "1" },
    { slotKey = "2", slotLabel = "2" },
    { slotKey = "3", slotLabel = "3" },
    { slotKey = "4", slotLabel = "4" },
    { slotKey = "5", slotLabel = "5" },
    { slotKey = "6", slotLabel = "6" },
    { slotKey = "7", slotLabel = "7" },
    { slotKey = "8", slotLabel = "8" },
    { slotKey = "K", slotLabel = "K" },
}

slotKey - used in key mapping
slotLabel - used in Ui


CustomHotBarCss

Adjust the positioning of hotbar.

Lua
Config.CustomHotBarCss = {
    left = "50%",
    top = "95%",
    scale = 1.0,
    gap = "0.75vw",
    reverseRow = false,
    column = false,
}

Language Configuration (sh.lang.lua)

The language file contains all text strings used in the UI. Each string can be customized:

Lua
Config.Lang = {
    ['skill_select'] = "Skill select",
    ['skill_select_hotbar'] = "Skill select hotbar",
    ['confirm'] = "Confirm",
}

Framework File (s.framework.lua)

Set up your framework here for use within the isVisible function in Config.Abilities


Functions File (c.functions.lua)

Here, you can customize the behavior of the useRaycast function. Whole useRaycast function behaviour is open source.

useRaycast usage:

Lua
local maxDistance = 50
local coords, entity = useRaycast(maxDistance)
if not coords then return false end

Input:

If the coords returns false, it indicates that the user attempted to point at coordinates too far from their original location.