STG ScriptsDocumentation
Money Wash

Configuration

Every option in STG Money Wash config.lua, from the framework, interaction style and dirty money type to police, wash time, entrances, machines and notifications.

All settings live in stg-washmoney/config.lua. The ped, blip and interaction code is in stg-washmoney/client/editable.lua. Both files stay editable in the escrow version. Restart the resource after a change.

Language

Config.Language = 'en'

Available: en, de, fr, es, pt, ar, ja, zh. To change a text, edit the matching file in stg-washmoney/locales/.

Framework

Config.Framework = "auto"

Prop

Type

Interaction

Config.InteractType = {
    ["textui"]   = { useThis = true },
    ["drawtext"] = { useThis = false },
    ["target"]   = { useThis = false },
}

Set useThis = true on the one style you want. It is used for the entrance ped, the machines and the exit point.

Prop

Type

If more than one is true, only the first match is used, in this order: drawtext, textui, target.

Dirty money

Config.Type = "black_money"
Config.BlackMoneyItem = "black_money"
Config.MarkedBillsItem = "markedbills"

When a player starts a machine, all of their dirty money of this type is taken in one go and paid back as clean cash, 1:1.

Prop

Type

QBCore and QBOX have no black_money money type out of the box, so the default reads $0 there. Use item or markedbills on those frameworks. On ESX, markedbills reads the bills from ox_inventory.

Police

Config.MinPolice = 0

Config.PoliceJobs = {
    ["police"] = true
}

Prop

Type

Wash time

Config.TimePerAmount = 0.1

Seconds of washing per dollar. With 0.1, washing $1,000 takes 100 seconds. The machine screen counts down and the TAKE button appears when it reaches zero.

Entrances

Each entry is a ped that takes players into the laundry:

Config.EnterLocations = {
    [1] = {
        pedSettings = { coords = vector4(-481.3524, -63.7307, 38.9942, 357.0594), model = "a_m_o_ktown_01" },
        blipSettings = { enabled = true, id = 500, scale = 0.65, colour = 12, displayName = "Money Wash" }
    }
}

Prop

Type

Entering teleports the player into the laundry. The exit point inside brings them back to the spot where they entered. Add more entries with the next index to open more entrances, they all lead to the same laundry.

Machines

Config.Locations = {
    [1] = vector4(1126.9615, -3194.2407, -40.3970, 0.1551),
    [2] = vector4(1125.5397, -3194.2898, -40.3974, 359.3980),
    [3] = vector4(1123.7719, -3194.2781, -40.3973, 351.9370)
}

Each entry is one washing machine inside the laundry. The heading is used for the target zone. Keep new machines inside the laundry, since every entrance teleports players there.

  • A machine is used by one player at a time. Others get a busy message until the screen is closed.
  • Washed cash stays in the machine until it is collected with TAKE. Machine state is kept in memory, so restarting the resource clears it.

Notifications

function Config.Notification(text, server, source)
    if server then
        TriggerClientEvent('esx:showNotification', source, text)
        TriggerClientEvent('QBCore:Notify', source, text)
    else
        TriggerEvent('esx:showNotification', text)
        TriggerEvent('QBCore:Notify', text)
    end
end

Sends the busy and not enough police messages to the ESX and QBCore notifications. Replace the body to use your own notification system.

Still having trouble?

Open a ticket on our Discord. Our team answers around 15 hours a day.

Get help on Discord

On this page