> For the complete documentation index, see [llms.txt](https://sbscripts.gitbook.io/sb-scripts/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sbscripts.gitbook.io/sb-scripts/sb-vip/shop-location.md).

# Shop Location

Set `Config.Shop.Type` to `'mlo'` or `'ipl'`.

### MLO

Use this when the shop is a walk-in interior.

* Only `Config.Shop.Menu` is used. There are no enter or exit points.
* The map blip sits on the menu.
* Showroom vehicles and the menu prop spawn when a player gets close.

### IPL

Use this when players are teleported into an interior.

```lua
Ipl = {
    Enter         = vector4(...),  -- outside door
    Exit          = vector4(...),  -- inside door
    Bucket        = 5,             -- routing bucket used inside the shop
    KickOutRadius = 30.0,
},
```

* Players use **Enter** to go inside and **Exit** to leave.
* Inside, players are moved into routing bucket `Bucket` (default `5`), and put back in their original bucket when they leave.
* Showroom vehicles and the menu prop only spawn while the player is inside.
* When a bought vehicle spawns outside, the player is taken out of the shop bucket first.
* Anyone found inside without using the door, for example after relogging inside, is moved to the entrance.
* The map blip sits on the outside door.

> 💡 For IPL shops, leave `Config.TestDrive.ReturnTo = nil` so players return to the shop after a test drive.
