# Mob Teleport

Leashed and tamed animals automatically travel along on every player teleport, whether triggered via [Home, Warp, TPA, Spawn, RTP](teleport.html) or another plugin.

## Commands

| Command | Syntax | Permission | Default | Description |
|---|---|---|---|---|
| `/mobteleport toggle` | `/mobteleport toggle` (alias `/mobtp`, `/mtp`) | `mobteleport.use` | `true` | Toggle for yourself (persists across restarts) |
| `/mobteleport reload` | `/mobteleport reload` | `mobteleport.admin` | `false` | Reload the configuration |

## Additional permissions

| Permission | Default | Description |
|---|---|---|
| `mobteleport.leashed` | `true` | Leashed animals travel along |
| `mobteleport.pets` | `true` | Tamed pets travel along (sitting ones deliberately stay) |
| `mobteleport.bypass.entityfilter` | `false` | Ignores the type filter |
| `mobteleport.bypass.worldgroup` | `false` | Ignores the world group restriction |
| `mobteleport.bypass.regionprotection` | `false` | Ignores region protection at the destination |

> **Tip:** Use `world-groups` to bundle an overworld with its nether: animals travel within the group but stay behind for jumps into foreign worlds. For every animal left behind the player gets a message with the reason.

## Configuration (modules/mobteleport.yml)

```yaml
# Enables or disables the mob teleport module.
enabled: true

mobteleport:
  # Secondary switch for the travel-along behavior.
  enabled: true
  # Search radius around the player in blocks (1 to 100). Teleports under
  # 1 block distance are ignored.
  scan-radius: 10.0
  # Ticks until a released leash is reattached after the teleport.
  # The lead item never drops.
  leash-reattach-delay: 2
  # Seconds of temporary invulnerability after the teleport (0 to 30).
  invulnerability-duration: 5.0
  entity-filter:
    # blacklist = all except the listed types travel along.
    # whitelist = only listed types travel along.
    mode: blacklist
    # Bukkit entity types, e.g. ["WOLF", "CAT", "HORSE"]
    types: []
  # Animals are not teleported into WorldGuard regions or
  # GriefPrevention claims.
  region-protection: true
  # Worlds in the same group allow traveling between each other.
  # Worlds without a group count as their own group.
  # world-groups:
  #   survival:
  #     - world
  #     - world_nether
```

## Complete example config

```yaml
enabled: true

mobteleport:
  enabled: true
  scan-radius: 15.0
  leash-reattach-delay: 2
  invulnerability-duration: 10.0
  entity-filter:
    mode: whitelist
    types:
      - WOLF
      - CAT
      - HORSE
      - DONKEY
  region-protection: true
  world-groups:
    survival:
      - world
      - world_nether
```
