Money Wash Resource
- Support multiple dirty money types at once
- Unlimited Locations, place anywhere on the map
- Customization (How long it takes to wash, percentage taken, etc)
- Server-sided (only one player can use the machine at a time)
- Realistic washing animations
Frameworks:
- QB
- ESX
- Custom
Do I need to use a target resource? (qb-target, ox_target)
- No, there is an option to use Text UI if you prefer
Get it here
Money Wash (Click Here)
Preview: [LINK]
–
Config
config = {}
config.target = { -- only one of these should be true
qb = true,
ox = false,
textUI = false,
}
config.wash_time = 30 -- how long it takes to wash a load of money (in seconds)
config.wash_percentage = 0.85 -- how much money you get back from washing [0.85 = 85%] (wash $100 dirty, receive $85 clean)
config.dirtymoney_types = {
'dirty_money',
'markedbills',
'black_money',
}
config.loading = {
[1] = {
prop = 'ch_prop_ch_laundry_machine_01a', -- closed
prop2 = 'bkr_prop_prtmachine_dryer_op', -- open
prop3 = 'bkr_prop_prtmachine_dryer_spin', -- spinning
prop_coords = vec4(29.738420, -2678.724609, 11.040356, 0), -- where the machine spawns
anim_coords = vector4(29.71, -2679.92, 12.04, 359.35) -- where the player stands to wash / load money
},
-- add more locations:
-- [2] = {
-- prop = 'ch_prop_ch_laundry_machine_01a', -- closed
-- prop2 = 'bkr_prop_prtmachine_dryer_op', -- open
-- prop3 = 'bkr_prop_prtmachine_dryer_spin', -- spinning
-- prop_coords = vec4(0, 0, 0, 0), -- where the machine spawns
-- anim_coords = vector4(0, 0, 0, 0) -- where the player stands to wash / load money
-- },
}
config.notify = function(msg, status) -- customize your notifications
lib.notify({
description = msg,
type = status, -- success, error
position = 'center-right',
})
end
-- only edit if you know what you're doing, here you can customize item checks (optional):
config.ItemCheck = function()
local has_item = {}
local framework = nil
local items = nil
local qb = GetResourceState('qb-core') == 'started'
local esx = GetResourceState('es_extended') == 'started'
--local custom = exports['custom_framework']:getSharedObject() == 'started' -- change this and uncomment if you're using a custom framework
if qb then
framework = exports['qb-core']:GetCoreObject()
items = framework.Functions.GetPlayerData().items
end
if esx then
framework = exports['es_extended']:getSharedObject()
items = framework.GetPlayerData().inventory
end
-- if not custom then
-- return
-- else
-- framework = exports['custom_framework']:getSharedObject()
-- items = framework.GetPlayerData().inventory
-- end
for k, v in pairs(items) do
for _, moneyitems in pairs(config.dirtymoney_types) do
if v.name == moneyitems then
local amount = v.amount or v.count
table.insert(has_item, {
item = v.name,
label = v.label,
count = amount,
})
end
end
end
return has_item
end
Other Resources:
-
Multi Character (3D character selection)
-
Spawn Select (Bundle Available)
-
Restaurant Jobs
(All in One)
-
Drug Labs: Meth, Coke, Weed (Bundle or individual)
-
Weed Table (Portable Weed Plant & Processing)
-
Molly Craft (Custom Molly Drug)
Code is accessible | Mostly |
Subscription-based | No |
Lines (approximately) | ~500 |
Requirements | ox_lib |
Support | Yes |