> For the complete documentation index, see [llms.txt](https://nayzeee-dev.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://nayzeee-dev.gitbook.io/docs/nayzeee-scripts/nayzeee-traffic/exports.md).

# Exports

***

### Client Exports

<details>

<summary>OpenMenu</summary>

Opens the traffic control menu.

```lua
exports['nayzeee-traffic']:OpenMenu()
```

**Note:** Requires admin permission.

</details>

<details>

<summary>GetCurrentSettings</summary>

Gets current traffic settings.

```lua
local settings = exports['nayzeee-traffic']:GetCurrentSettings()
```

**Returns:**

```lua
{
    vehicleDensity = number, -- 0.0 to 1.0
    pedDensity = number,     -- 0.0 to 1.0
    parkedVehicles = number, -- 0.0 to 1.0
    randomVehicles = number  -- 0.0 to 1.0
}
```

</details>

<details>

<summary>SetVehicleDensity</summary>

Sets vehicle traffic density.

```lua
exports['nayzeee-traffic']:SetVehicleDensity(value)
```

**Parameters:**

| Parameter | Type   | Description              |
| --------- | ------ | ------------------------ |
| `value`   | number | 0.0 (none) to 1.0 (full) |

</details>

<details>

<summary>SetPedDensity</summary>

Sets pedestrian density.

```lua
exports['nayzeee-traffic']:SetPedDensity(value)
```

**Parameters:**

| Parameter | Type   | Description              |
| --------- | ------ | ------------------------ |
| `value`   | number | 0.0 (none) to 1.0 (full) |

</details>

***

### Server Exports

<details>

<summary>GetSettings</summary>

Gets current server-side settings.

```lua
local settings = exports['nayzeee-traffic']:GetSettings()
```

</details>

<details>

<summary>SetSettings</summary>

Sets traffic settings server-wide.

```lua
exports['nayzeee-traffic']:SetSettings(settings)
```

**Parameters:**

```lua
{
    vehicleDensity = 0.5,
    pedDensity = 0.5,
    parkedVehicles = 0.5,
    randomVehicles = 0.5
}
```

</details>

<details>

<summary>ResetSettings</summary>

Resets to default settings.

```lua
exports['nayzeee-traffic']:ResetSettings()
```

</details>

***

### Integration Examples

#### Event-Based Density

```lua
-- Reduce traffic during events
RegisterNetEvent('event:started')
AddEventHandler('event:started', function(eventType)
    if eventType == 'race' then
        exports['nayzeee-traffic']:SetSettings({
            vehicleDensity = 0.1,
            pedDensity = 0.1,
            parkedVehicles = 0.2,
            randomVehicles = 0.1
        })
    end
end)

RegisterNetEvent('event:ended')
AddEventHandler('event:ended', function()
    exports['nayzeee-traffic']:ResetSettings()
end)
```

#### Time-Based Density

```lua
-- Lower traffic at night
CreateThread(function()
    while true do
        local hour = GetClockHours()
        if hour >= 2 and hour <= 5 then
            -- Late night - low traffic
            exports['nayzeee-traffic']:SetVehicleDensity(0.2)
            exports['nayzeee-traffic']:SetPedDensity(0.1)
        else
            -- Normal traffic
            exports['nayzeee-traffic']:SetVehicleDensity(0.7)
            exports['nayzeee-traffic']:SetPedDensity(0.6)
        end
        Wait(60000) -- Check every minute
    end
end)
```

#### Admin Menu Integration

```lua
-- Add to your admin menu
RegisterCommand('trafficmenu', function(source)
    if IsPlayerAdmin(source) then
        exports['nayzeee-traffic']:OpenMenu()
    end
end, false)
```
