# BEHAVIOR_CATALOGUE

> Talos 0.7 · Since 0.6

## Signature

```ts
export const BEHAVIOR_CATALOGUE: readonly BehaviorEntry[] = [
  {
    module: "player",
    entry: "src/behaviors/player.ts",
    summary:
      "Maps input to ctx.controller each tick using the entity's controller component (speed, jump, crouch) and drives the camera rig. Emits nothing.",
    props: [
      "speed", "jump", "crouchSpeedScale", "sprintScale", "crouchMode", "requireGrounded",
      "cameraRelative", "facing", "camera", "cameras", "cameraBlend", "input",
    ],
  },
  {
    module: "camera",
    entry: "src/behaviors/camera.ts",
    summary: "Runs a camera rig on any entity (fixed, orbit, third- or first-person) and blends between the rigs named in props.",
    props: ["kind", "config", "rigs", "steerable", "input", "blend"],
  },
  {
    module: "camera-2d",
    entry: "src/behaviors/camera-2d.ts",
    summary:
      "Follows a target in the XY plane with a camera looking down -Z: deadzone, look-ahead, smoothing, a bounds clamp (a rectangle or a tilemap's extent) measured with the view's real size, and an optional whole-number pixel scale. Reads no input.",
    props: ["target", "offset", "deadzone", "lookAhead", "lookAheadMinSpeed", "lookAheadLambda", "followLambda", "bounds", "z", "pixelScale"],
  },
  {
    module: "animator",
    entry: "src/behaviors/animator.ts",
    summary:
      "Runs the animator component's states and transitions, driven by the controller's moving/idle/jump/land events with a humanoid fallback.",
    props: ["interruptBlends", "fallbackBlend", "events"],
  },
  {
    module: "hud",
    entry: "src/behaviors/hud.ts",
    summary: "Binds the overlay to the scene's goals: objective by labelKey in order, progress, timer, score; text by string key.",
    props: ["goals", "goalEvent", "progressField", "completeKey", "strings", "timer", "score"],
  },
  {
    module: "audio",
    entry: "src/behaviors/audio.ts",
    summary: "Applies the audio component (autoplay, loop, spatial, volume) at init and plays cues bound to event names.",
    props: ["triggers", "defaultBus", "masterVolume", "stopOnDispose"],
  },
  {
    module: "particles",
    entry: "src/behaviors/particles.ts",
    summary: "Runs the emitter the particles component describes (preset, rate, colour) and fires one-shot bursts on events.",
    props: ["params", "manual", "on"],
  },
  {
    module: "locomotion",
    entry: "src/behaviors/locomotion.ts",
    summary:
      "Drives a 1D blend tree from the character's planar speed and counts the animator's footstep events, playing a cue for each. Leaves a parameter the scene bound to a controller fact to the engine.",
    props: ["parameter", "footstepEvent", "cue", "bus", "scale"],
  },
  {
    module: "grounding",
    entry: "src/behaviors/grounding.ts",
    summary:
```

Import: `import { BEHAVIOR_CATALOGUE } from "@argus/gameplay"`
