Installation

Load order, coords for the four drive-thru points, and how to verify the lane works end to end.

Dependencies

ResourceRequiredNotes
BurgerShot (base script) v1.0+YesThe addon is built entirely on its public exports
ox_targetYesUsed for the cook's serve point
ox_libYesNotifications and the text UI prompts

Everything else (framework, inventory, banking, database) comes from the base script. The addon adds no tables of its own and no items of its own.

1. Drop the resource

Put it next to the base script:

resources/
└── [jobs]/
    ├── AC_Burgershot/
    └── ac_burgershot_drivethru/

2. Load order matters

cfg
ensure AC_Burgershot
ensure ac_burgershot_drivethru

The addon must start after the base. If it starts first, its export calls hit a resource that is not up yet.

3. Coordinates

The shipped coords target the drive-thru lane of the Vespucci BurgerShot MLO. If you use a different interior, set all four points in config/config.lua.

Config keyWhat it isWho uses it
Config.DriveThru.speakerWhere the customer presses E to orderCustomer, in a driver's seat
Config.DriveThru.windowWhere the customer pays and collectsCustomer, in a driver's seat
Config.DriveThru.cookServeWhere the cook hands items to the laneEmployee, on foot
Config.DriveThru.autoVoid.centerCentre of the area the customer must stay insideServer-side poller

The speaker and window are distance-based text prompts rather than target zones, because ox_target does not work from inside a vehicle. That means their size is informational and the real trigger is a radius: 3.5m at the speaker, 6.0m at the window. Place the coords roughly at the car window height and drive up to them to check.

The cook's serve point is a normal ox_target box, so its coords and size behave like any zone in the base script.

Set Config.Debug = true to draw the serve zone while you place it.

4. Pricing

lua
Config.DriveThruSurcharge = 10   -- percent markup over walk-in prices

The percentage is applied to the order subtotal when the addon creates the order. Set it to 0 for parity with the counter.

5. Restart and verify

Restart the server, then walk the whole loop once:

  1. Get in a car, drive to the speaker. The prompt reads [E] Order at Speaker. If it does not appear, you are either not in the driver's seat or you already have an open drive-thru order.
  2. Press E, build a cart, confirm. You get "Drive-thru order #X placed".
  3. On a second character with the job, open the tablet. The ticket is in the queue with a car badge. Accept it.
  4. Take the ingredients from the stash, cook the items at the stations.
  5. Walk to the addon's serve point. The prompt reads Serve to Window. Click it.
  6. Back on the customer, you are told the order is ready. Drive to the window. The prompt reads [E] Pay & Collect.
  7. Press E, pay, and the food lands in your inventory.

If the window prompt reads "Wait, order not ready" instead, the order has not reached READY yet, which means the cook has not served every line.

Updating

Under Cfx asset escrow only config/config.lua and the README stay unencrypted in this addon, so back up your config, replace the folder, restore the config, and restart.

Keep the addon on a version that matches your base script. The base exports are stable across v1.x, so a v1.x addon works with any v1.x base, but a base major version bump may change the surface.