Skip to content

๐Ÿ“š qb-smallresources

Introduction

  • This resource handles many small tasks for the framework
  • Discord Logs
  • Timed Jobs
  • Consumable foods/beverages/drinks/drugs (sandwich, water_bottle, tosti, beer, vodka etc.)
  • Removal of GTAโ€™s default weapons drops
  • Drug effects
  • Removal of GTAโ€™s default vehicle spawns (planes, helicopters, emergency vehicles etc.)
  • Removal of GTAโ€™s default emergency service npcโ€™s
  • Removal of GTAโ€™s default wanted system
  • Useable binoculars
  • Weapon draw animations (normal/holster)
  • Ability to add teleport markers (from a place to another place)
  • Taking hostage
  • Pointing animation with finger (by pressing โ€œBโ€)
  • Seatbelt and cruise control
  • Useable parachute
  • Useable armor
  • Weapon recoil (specific to each weapon)
  • Tackle
  • Calm AI (adjusting npc aggressiveness)
  • Race Harness
  • Adjusting npc/vehicle/parked vehicle spawn rates
  • Infinite ammo for fire extinguisher and petrol can
  • Removal of GTAโ€™s default huds (weapon wheel, cash etc.)
  • Fireworks
  • Automatically engine on after entering vehicle
  • Discord rich presence
  • Crouch and prone
  • AFK dection

Configuration

General

Config.MaxWidth = 5.0
Config.MaxHeight = 5.0
Config.MaxLength = 5.0
Config.DamageNeeded = 100.0
Config.IdleCamera = true -- enable/disable idle camrea
Config.EnableProne = true -- enable/disable prone
Config.JointEffectTime = 60 -- how long does getting high affect the player?
Config.RemoveWeaponDrops = true -- enable/disable native weapon drops
Config.RemoveWeaponDropsTimer = 25
Config.DefaultPrice = 20 -- carwash
Config.DirtLevel = 0.1 -- carwash dirt level

Config.Teleports = {
    --Elevator @ labs
    [1] = {
        [1] = { --First location of the Teleport
            coords = vector4(3540.74, 3675.59, 20.99, 167.5),
            ["AllowVehicle"] = false, -- enable/disable vehicle
            drawText = '[E] Take Elevator Up' -- Drawtext label
        },
        [2] = { --Second location of the Teleport
            coords = vector4(3540.74, 3675.59, 28.11, 172.5),
            ["AllowVehicle"] = false,
            drawText = '[E] Take Elevator Down'
        },

    },
    [2] = { --New teleport 
        [1] = {
            coords = vector4(909.49, -1589.22, 30.51, 92.24),
            ["AllowVehicle"] = false,
            drawText = '[E] Enter Coke Processing'
        },
        [2] = {
            coords = vector4(1088.81, -3187.57, -38.99, 181.7),
            ["AllowVehicle"] = false,
            drawText = '[E] Leave'
        },
    },
}

Config.CarWash = { -- carwash
    [1] = {
        ["label"] = "Hands Free Carwash", -- map blip name
        ["coords"] = vector3(25.29, -1391.96, 29.33), -- map blip location
    },
    [2] = {
        ["label"] = "Hands Free Carwash",
        ["coords"] = vector3(174.18, -1736.66, 29.35),
    }
}

Blacklist ped and vehicle models

Config.BlacklistedVehs = { -- these vehicles will delete themselves on spawn
    [`SHAMAL`] = true,
    [`LUXOR`] = true,
    [`LUXOR2`] = true,
    [`JET`] = true,
    [`LAZER`] = true,
    [`BUZZARD`] = true,
    [`BUZZARD2`] = true,
    [`ANNIHILATOR`] = true,
    [`SAVAGE`] = true,
    [`TITAN`] = true,
}

Config.BlacklistedPeds = { -- these NPCs will delete themslves on spawn
    [`s_m_y_ranger_01`] = true,
    [`s_m_y_sheriff_01`] = true,
    [`s_m_y_cop_01`] = true,
    [`s_f_y_sheriff_01`] = true,
    [`s_f_y_cop_01`] = true,
    [`s_m_y_hwaycop_01`] = true,
}

Consumables

ConsumeablesEat = { -- how much hunger is relieved on use
    ["sandwich"] = math.random(35, 54), 
    ["tosti"] = math.random(40, 50),
    ["twerks_candy"] = math.random(35, 54),
    ["snikkel_candy"] = math.random(40, 50),
}

ConsumeablesDrink = { -- how much thirst is relieved on use
    ["water_bottle"] = math.random(35, 54),
    ["kurkakola"] = math.random(35, 54),
    ["coffee"] = math.random(40, 50),
}

ConsumeablesAlcohol = { -- how much thirst is relieved on use
    ["whiskey"] = math.random(20, 30),
    ["beer"] = math.random(30, 40),
    ["vodka"] = math.random(20, 40),
}

Timed Jobs / Cron

Usage (Server Exports):

  • CreateTimedJob(hour: number, min: number, callback: function)

    Used for registering the actual timed job. Returns the index of the timed job which can be used to force run or stop the timed job.
    Example:

    -- `idx` becomes the index of the timed job.
    local idx = exports["qb-smallresources"]:CreateTimedJob(8, 20, function(day, hour, min)
       if day == 1 then -- check if its monday
           print("Its currently 08:20 AM on a monday")
       end
    end)
  • ForceRunTimedJob(idx: number)

    Used to force run a timed job, even if the time isnt correct. Does not bypass local checks in the actual callback though.
    Example:

    exports["qb-smallresources"]:ForceRunTimedJob(2)
  • StopTimedJob(idx: number)

    Stops the timed job forever (unless registered again).
    Example:

    exports["qb-smallresources"]:StopTimedJob(3)

Logs

local Webhooks = {
    ['default'] = '', --Discord webhooks get put here
    ['testwebhook'] = '',
    ['playermoney'] = '',
    ['playerinventory'] = '',
    ['robbing'] = '',
    ['cuffing'] = '',
    ['drop'] = '',
    ['trunk'] = '',
    ['stash'] = '',
    ['glovebox'] = '',
    ['banking'] = '',
    ['vehicleshop'] = '',
    ['vehicleupgrades'] = '',
    ['shops'] = '',
    ['dealers'] = '',
    ['storerobbery'] = '',
    ['bankrobbery'] = '',
    ['powerplants'] = '',
    ['death'] = '',
    ['joinleave'] = '',
    ['ooc'] = '',
    ['report'] = '',
    ['me'] = '',
    ['pmelding'] = '',
    ['112'] = '',
    ['bans'] = '',
    ['anticheat'] = '',
    ['weather'] = '',
    ['moneysafes'] = '',
    ['bennys'] = '',
    ['bossmenu'] = '',
    ['robbery'] = '',
    ['casino'] = '',
    ['traphouse'] = '',
    ['911'] = '',
    ['palert'] = '',
    ['house'] = '',
}

local Colors = { -- https://www.spycolor.com/
    ['default'] = 14423100,
    ['blue'] = 255,
    ['red'] = 16711680,
    ['green'] = 65280,
    ['white'] = 16777215,
    ['black'] = 0,
    ['orange'] = 16744192,
    ['yellow'] = 16776960,
    ['pink'] = 16761035,
    ["lightgreen"] = 65309,
}

Example

Client

RegisterCommand('clientlogtest', function()
    TriggerServerEvent('qb-log:server:CreateLog', 'testwebhook', 'Test Webhook', 'default', 'Webhook Client Side setup successfully')
end)

Server

RegisterCommand('serverlogtest', function()
    TriggerEvent('qb-log:server:CreateLog', 'testwebhook', 'Test Webhook', 'default', 'Webhook Client Side setup successfully')
end

Discord rich presence

CreateThread(function()
    while true do
        -- This is the Application ID (Replace this with you own)
	SetDiscordAppId()

        -- Here you will have to put the image name for the "large" icon.
	SetDiscordRichPresenceAsset('logo_name')
        
        -- (11-11-2018) New Natives:

        -- Here you can add hover text for the "large" icon.
        SetDiscordRichPresenceAssetText('This is a lage icon with text')
       
        -- Here you will have to put the image name for the "small" icon.
        SetDiscordRichPresenceAssetSmall('logo_name')

        -- Here you can add hover text for the "small" icon.
        SetDiscordRichPresenceAssetSmallText('This is a lsmall icon with text')

        QBCore.Functions.TriggerCallback('smallresources:server:GetCurrentPlayers', function(result)
            SetRichPresence('Players: '..result..'/64')
        end)

        -- (26-02-2021) New Native:

        --[[ 
            Here you can add buttons that will display in your Discord Status,
            First paramater is the button index (0 or 1), second is the title and 
            last is the url (this has to start with "fivem://connect/" or "https://") 
        ]]--
        SetDiscordRichPresenceAction(0, "First Button!", "fivem://connect/localhost:30120")
        SetDiscordRichPresenceAction(1, "Second Button!", "fivem://connect/localhost:30120")

        -- It updates every minute just in case.
	Wait(60000)
    end
end)

Rockstar editor

Commands

  • /editor - Activates rockstar editor
  • /record - Starts a recording
  • /clip- Strarts to record a clip
  • /saveclip - Saves the clip
  • /delclip - Deletes clip

Items

  • vodka - Consumable
  • beer - Consumable
  • whiskey - Consumable
  • sandwich - Consumable
  • twerks_candy - Consumable
  • snikkel_candy - Consumable
  • tosti - Consumable
  • water_bottle - Consumable
  • coffee - Consumable
  • kurkakola - Consumable
  • joint - Drug
  • cokebaggy - Drug
  • crack_baggy - Drug
  • xtcbaggy - Drug
  • oxy - Drug
  • meth - Drug
  • armor - Gives armor on use
  • heavyarmor - Gives armor on use
  • binoculars - Useable binoculars to look far distances
  • parachute - adds a parachute to the player allowing to deploy it in the air
  • firework1 - Make things go boom
  • firework2 - More fireworks
  • firework3 - So many fireworks
  • firework4 - Looks nice
  • lockpick - The item used to trigger qb-lockpick.md
  • advancedlockpick - Another item used to trigger qb-lockpick.md

Commands

  • /resetparachute - Returns parachute back to the player
  • /resetarmor- Removes armor and gives heavyarmor back