Configuration
General Configuration
Config, Lang, NPC, Noti, Veh, Finish = {}, {}, {}, {}, {}, {}
-- Use "esx" or "qb"
Config.Framework = "qb"
-- If you are using one of the most recent versions of ESX, set the script name. Default = "es_extended"
Config.ESXExport = "es_extended"
-- Default ESX: "esx:getSharedObject" | Default QB: "qb-core"
Config.Core = "qb-core"
-- Font type for drawtext default text. Default = 4. Set 0 to chinese language
Config.alertTextFont = 4
-- Interaction key to perform some actions
Config.interactionKey = "E"
-- Set the price for each item collected
Config.priceForItem = 100
-- How the male gender is displayed in your database
Config.genderMale = 0
-- How the female gender is displayed in your database
Config.genderFemale = 1
-- Set the cooldown to search garbage in the same bin (in seconds)
Config.cooldown = 120
-- Set true if you want tu use cam when you are with the dumpster
Config.useCam = true
-- Set to true if you want to force to use the job clothes
Config.forceUseClothes = true
NPC Configuration
-- Location where the NPC is positioned for job selection
NPC.location = vector4(-623.14, -1639.36, 25.97, 150.9)
-- Model of the NPC
NPC.model = "s_m_y_dockwork_01"
Vehicle Configuration
-- Location where the vehicle will spawn when the job is selected
Veh.location = vector4(-634.31, -1657.46, 25.54, 240.96)
-- Model of the vehicle
Veh.model = "trash2"
-- Function for the delivery of vehicle keys to the user when spawning
function giveVehicleKeys(entity, plate)
TriggerEvent('vehiclekeys:client:SetOwner', plate)
end
Finish Location
Finish.location = vector4(-612.47, -1597.28, 26.46, 265.07)
Finish.markerType = 23
Finish.markerSize = vector3(5.0, 5.0, 5.0)
Finish.markerColor = vector3(0, 100, 58)
Finish.blipType = 67
Finish.blipScale = 0.7
Finish.blipColor = 43
Finish.blipText = "Finish Job"
Notifications
function notifications(notitype, message, time)
-- Change this trigger for your notification system keeping the variables
TriggerEvent('codem-notification', message, time, notitype)
end
-- Notifications types:
Noti.info = 'info'
Noti.check = 'check'
Noti.error = 'error'
-- Notification time:
Noti.time = 5000
Target Functions
-- Function for the use of target on items such as garbage bags, barrels, tires, etc...
function target(elements, event, label)
exports['qb-target']:AddTargetModel(elements, {
options = {{
type = "client",
event = event,
icon = "fas fa-box-circle-check",
label = label
}},
distance = 3.0
})
end
-- Function for the use of the target in entities (e.g., the npc delivering the job).
function entityTarget(entity, event, label)
exports['qb-target']:AddTargetEntity(entity, {
options = {{
type = "client",
event = event,
icon = "fas fa-box-circle-check",
label = label
}},
distance = 3.0
})
end
-- Function for remove of target on items such as garbage bags, barrels, tires, etc...
function removeTarget(element)
exports['qb-target']:RemoveTargetModel(element)
end
Language Configuration
Lang.putInTruck = "Put in the truck"
Lang.pickUp = "Pick up garbage"
Lang.openJobMenu = "Open job menu"
Lang.noJob = "You are not working as a garbage man, you cannot perform this action."
Lang.startJob = "You are now working as a garbage collector"
Lang.finishJob = "You have finished your work as a garbage collector, you have received a payment of"
Lang.noGarbage = "You have not found anything in this garbage can!"
Lang.noClothes = "You don't have the right clothes to start the job"
Lang.noClothesOff = "You must wear your work clothes during the working day."
Clothes Configuration
ESX Framework
if Config.Framework == "esx" then
Clothes = {
male = {
['tshirt_1'] = 59,
['tshirt_2'] = 0,
['torso_1'] = 56,
['torso_2'] = 0,
['decals_1'] = 0,
['decals_2'] = 0,
['arms'] = 41,
['pants_1'] = 9,
['pants_2'] = 7,
['shoes_1'] = 27,
['shoes_2'] = 0,
['helmet_1'] = 0,
['helmet_2'] = 0,
['chain_1'] = 0,
['chain_2'] = 0,
['ears_1'] = 0,
['ears_2'] = 0
},
female = {
['tshirt_1'] = 36,
['tshirt_2'] = 1,
['torso_1'] = 48,
['torso_2'] = 0,
['decals_1'] = 0,
['decals_2'] = 0,
['arms'] = 44,
['pants_1'] = 34,
['pants_2'] = 0,
['shoes_1'] = 27,
['shoes_2'] = 0,
['helmet_1'] = 45,
['helmet_2'] = 0,
['chain_1'] = 0,
['chain_2'] = 0,
['ears_1'] = 2,
['ears_2'] = 0
}
}
end
QB Framework
elseif Config.Framework == "qb" then
Clothesmale = {
outfitData = {
['pants'] = { item = 9, texture = 0 },
['arms'] = { item = 41, texture = 0 },
['t-shirt'] = { item = 59, texture = 0 },
['vest'] = { item = 0, texture = 0 },
['torso2'] = { item = 56, texture = 0 },
['shoes'] = { item = 27, texture = 0 },
['accessory'] = { item = 0, texture = 0 },
['bag'] = { item = 0, texture = 0 },
['hat'] = { item = 0, texture = 0 },
['glass'] = { item = 0, texture = 0 },
['mask'] = { item = 0, texture = 0 }
}
}
Clothesfemale = {
outfitData = {
['pants'] = { item = 45, texture = 0 },
['arms'] = { item = 2, texture = 0 },
['t-shirt'] = { item = 36, texture = 0 },
['vest'] = { item = 0, texture = 0 },
['torso2'] = { item = 30, texture = 1 },
['shoes'] = { item = 25, texture = 0 },
['accessory'] = { item = 0, texture = 0 },
['bag'] = { item = 0, texture = 0 },
['hat'] = { item = 0, texture = 0 },
['glass'] = { item = 0, texture = 0 },
['mask'] = { item = 0, texture = 0 }
}
}
end
Street Trash Items
The script includes a comprehensive list of configurable street trash items including:
- Barrels (prop_barrel_01a)
- Car parts (prop_rub_carpart_05)
- Monitors (prop_rub_monitor)
- Tires (prop_wheel_tyre)
- Garbage bags (multiple variants)
- Boxes (prop_rub_boxpile_10)
- Bins (multiple types and models)
- Dumpsters (multiple variants)
Each item has customizable properties including position offsets (x, y, z) and rotation values (rotX, rotY, rotZ) for dumpsters.