Page cover

Garage

Manage garages, vehicle storage, impound, and job-based parking with full ESX support.

๐Ÿš— Prix Garage (prix_garage)

Manage garages, vehicle storage, impound, and job-based parking with full ESX support.

This resource is fully integrated with prix_core.

GitBook

๐Ÿ“ฆ Requirements

  • MySQL resource

    • oxmysql (recommended)

    • mysql-async

    • ghmattisql

  • ESX Legacy (or compatible ESX fork)

โš™๏ธ Installation

  1. Download and place prix_garage inside your resources/ folder.

  2. Add to your server.cfg:

ensure prix_garage
  1. Make sure your database has the owned_vehicles table (default ESX vehicle ownership table).

  2. Configure garages, impounds, jobs, and settings inside:

shared/config.lua

๐Ÿ”ง Configuration

All configuration is located in shared/config.lua.

Option
Description

Config.MySQL

Which MySQL wrapper to use (oxmysql, mysql-async, ghmattisql).

Config.FuelSystem

Choose fuel integration (ox_fuel, LegacyFuel, or custom).

Config.KeySystem

Handle vehicle keys (custom by default).

Config.UseRadialMenu

Enable/disable ox_lib radial menu integration.

Config.ImpoundCommand

Configure /impound command (jobs, radius, price).

Config.PedEnabled

Spawn NPCs at garage locations.

Config.GarageBlip

Customize map blips for garages (sprite, scale, color).

Config.ImpoundBlip

Customize map blips for impounds.

Config.JobGarajes

Job-specific garages.

Config.Garages

Public garages.

Config.Impounds

Impound locations.


๐Ÿ“ Example Config

Config.MySQL = 'oxmysql'
Config.FuelSystem = 'ox_fuel'

Config.ImpoundCommandEnabled = true
Config.ImpoundCommand = {
    command = 'impound',
    radius = 2.0,
    jobs = { 'police' }
}

๐ŸŽฎ Features

  • โœ… Store and retrieve owned vehicles

  • โœ… Police/EMS impound system

  • โœ… Vehicle recovery with fee

  • โœ… Job-specific garages

  • โœ… Vehicle transfer between garages

  • โœ… NPC garage attendants & map blips

  • โœ… Multi-language support (locales/*.json)


๐Ÿ› ๏ธ Commands

Command
Description
Restriction

/impound

Impounds the nearest vehicle

Police/EMS (config)


๐Ÿ“ก Server Callbacks

Callback
Description

prix_garage:checkOwner

Verify vehicle ownership by plate.

prix_garage:getVehicles

Get all vehicles for player/job.

prix_garage:getImpoundedVehicles

Get impounded vehicles for player.

prix_garage:canPay

Check and remove money from player.

prix_garage:getVehicle

Get vehicle data by plate.

prix_garage:setPlayerRoutingBucket

Move player into instance (routing bucket).


๐Ÿ”” Server Events

Event
Description

prix_garage:updateVehicle

Update vehicle data in DB.

prix_garage:buyVehicle

Insert new purchased vehicle into DB.

prix_garage:setVehicleOut

Mark vehicle as outside of garage.

prix_garage:setVehicleParking

Save garage parking location.

prix_garage:setVehicleImpound

Mark vehicle as impounded.


๐ŸŒ Locales

Default English translation is included in locales/en.json. You can add more JSON files in locales/ and switch the active locale in config.

Example:

{
  "radial-garage": "Garage",
  "access-garage": "[E] - Open garage",
  "vehicle_stored": "Vehicle successfully stored"
}

Last updated