๐ 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