# Overview

`lwk_stopstick` is a throwable Stop Stick. Toss the folded sleeve across the road, pull it into the lane on its 80 ft cord as the suspect arrives, then yank it clear before your own units hit it. Only the tyres that actually roll over it burst. c3r's pursuit backup lays them too.

## Using it

1. **Take one.** By default every emergency vehicle carries two. Stand at the boot and take one with `/stopstick` (or the ox_target option, if you run ox_target).
2. **Throw it.** Aim at the road; an orange marker shows where it lands, 2.5 to 9 m away. Press **G**.
3. **Hold the cord.** You keep the cord's reel. Walk more than 80 ft away, or get in a vehicle, and you let go.
4. **Yank it.** Press **G** again: the stick shoots toward you along the ground and slides to a stop at your feet. One yank brings it in up to 12 m.
5. **Pick it up.** Stand next to it and press **E**.

> [!TIP]
> The real tactic: throw it to the far shoulder, wait at the roadside, yank it into the lane as the suspect arrives, then yank it out again before the chasing units pass.

## Controls

| Key | While carrying | While holding the cord |
|---|---|---|
| **G** | Throw at the ground marker | Yank the stick toward you |
| **X** | | Let go of the cord (the stick stays put) |
| **E** | | Pick the stick up, when you're next to it |
| `/stopstick` | Put it away | |

Rebind them in **Settings → Key Bindings → FiveM → lwk_stopstick**.

> [!NOTE]
> c3r's vehicle wheel is also on **G**. Both only clash while you're carrying a stick; rebind one if it gets in the way.

## Where sticks come from

| `Config.Source` | How |
|---|---|
| `'vehicle'` (default) | Every emergency vehicle carries `Config.PerVehicle` sticks. Take and return them at the boot |
| `'item'` | Use the `stopstick` inventory item to take one out; picking it up or putting it away gives the item back |
| `'free'` | `/stopstick` hands you one. For testing |
| `'auto'` | `'item'` when an inventory is found (ox_inventory, qb, esx), otherwise `'vehicle'` |

On a framework server with an inventory, add the item. For ox_inventory (`ox_inventory/data/items.lua`):

```lua
['stopstick'] = {
    label = 'Stop Stick', weight = 1800, stack = false, consume = 0,
    server = { export = 'lwk_stopstick.useItem' },
},
```

On qb-core or ESX, add a `stopstick` item to your shared items or database as usual; the resource registers it as usable.

## Who can use it

| Framework | Who |
|---|---|
| Standalone (c3r) | Anyone, or players with the ace in `Config.Ace` |
| qbx_core, qb-core, ESX | The jobs in `Config.Jobs` (police, sheriff, state by default) |

Detected automatically (`Config.Framework = 'auto'`).

## With c3r

During a chase, a pursuit backup request's first car sometimes lays a stick across the suspect's path up ahead and pulls it once they're past. How often is `Config.Backup.spikes` in [c3r's config](/docs/c3r/configuration#backup-and-the-tow-truck) (0.5 by default).

## How it works

- The deployed sleeve is three sticks linked at their stitched joints, dragged as a small physics chain: a yank hauls the cord end, the other sticks trail, flex and skid to a stop. Every player sees the same motion.
- The sticks have no collision on purpose, so cars roll over them instead of hopping.
- Tyres go instantly flat but stay drivable by default (`Config.BurstToRim = false`).
- A stick nobody's holding the cord of disappears after 15 minutes (`Config.Despawn`).

## Troubleshooting

- **"You are not equipped to deploy Stop Sticks."** Your job isn't in `Config.Jobs`, or you lack the ace in `Config.Ace`.
- **"This vehicle has no Stop Sticks left."** Return the ones you took, or use another car.
- **"Stand at the boot of an emergency vehicle."** In vehicle mode you take sticks from the boot of an emergency-class car (or a model in `Config.Vehicles`).
- **Cars drive over it without bursting.** Only tyres that cross the stick's line burst. `Config.Debug = true` draws each stick's hit line (red) and the wheel paths near it (green).
