🕵️‍♂️Usage

Open the shop

  • Drive a vehicle into a configured zone and press E to open.

  • HUD is hidden; radar is disabled while UI is open.

  • Non-mechanics in both mode get cosmetics-only when mechanics online ≥ minMechanic.

Preview & Select

  • Choose a category. The script temporarily applies the mod for live preview.

  • Horn preview: a hidden ghost vehicle plays the horn for ~15 seconds.

Buy

  • UI computes total price based on differences from your current vehicle state.

  • On purchase, server validates with risk-tuner:checkMoney:

    • If mechanic and UseSocity=true, debit society.

    • If self-tuning and GoInSoicity=true, credit society; always remove player cash for self-tuning.

  • On success, server saves mods by plate:

    • ESX: owned_vehicles.vehicle JSON

    • QB: player_vehicles.mods JSON

Exit without purchase

  • All temporary changes are reverted to the original vehicle state.


5) Blips Behavior

  • mechanic: show mechanic blips. Tuner/public blips remain under your hideblip/visibility rules.

  • self: show public tuner blips to everyone.

  • both:

    • Mechanics: see mechanic locations.

    • Players: see tuner/public blips only when mechanics online < minMechanic. When enough mechanics are online, tuner blips can hide, depending on hideblip.

The client auto-refreshes blips when job or mechanic count changes.


6) Developer Notes

Callbacks & Events

  • lib.callback.register('risk-tuner:checkMoney') server-side price validation

  • lib.callback.register('risk-tuner:getJob') returns if player is mechanic

  • lib.callback.register('risk-tuner:isRestart') simple ready check

  • risk-tuner:updateTotalMechanic server event to broadcast count

  • risk-tuner:setTotalMechanic client event to refresh blips

Debug helpers

  • Client command baran restores the captured pre-preview properties to the vehicle.

  • Server command addmoneytest (ESX): adds 50,000 to the society for quick testing.

Security

  • All billing is server-authoritative. NUI price edits or devtools tricks are ignored because the server recalculates and validates the payable amount before saving.

Last updated