# setCinematicCamera (Cliente)

> Define los planos de cámara que la cinemática dirige durante la reproducción. Reemplaza los planos anteriores.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Función Lua
- **Lado**: Cliente
- **Categoría**: Cinemáticas
- **URL**: https://wiki.mymp.gg/es/setCinematicCamera

## Sintaxis

```lua
bool setCinematicCamera(cinematic cinematic, table shots)
```

## Parámetros

| Nombre | Tipo | Descripción |
| --- | --- | --- |
| `cinematic` | `cinematic` | La cinemática. |
| `shots` | `table` | Lista de planos, en orden de `start`. Una lista vacía quita la cámara de la cinemática. |

## Retorno

`true` si se aplicaron. `false` si la tabla no es válida, con un aviso que dice el motivo.

### Campos comunes del plano

Los tiempos son de la cinemática, en ms. Cada plano empieza cuando el anterior se detuvo:

- `start`: cuándo entra (obligatorio).
- `blend`: ms para mezclar desde el plano anterior. `0` es un corte.
- `stop`: cuándo se detiene. Sin él, dura hasta el plano siguiente; una vez detenido, la cámara mantiene la última vista.
- `shake`: temblor en metros, `0` por defecto. `shakeSpeed`: su frecuencia en Hz, `12` por defecto.
- `letterbox`: `true` muestra las franjas de pantalla ancha de SA durante el plano.

### Planos de trayecto

Un plano de trayecto define `keys` (lista de claves en orden de tiempo):

- `time`: instante de la clave en ms (obligatorio).
- `position` y `target`: coordenadas `vec3` (obligatorios).
- `roll`: inclinación en grados (`0` por defecto).
- `fov`: campo de visión en grados, mayor que `0` y menor que `180` (`70` por defecto).
- `smooth`: `true` sigue la curva de cutscene de SA; `false` va en línea recta a la clave siguiente.
- `ease`: interpolación hacia la clave siguiente — `"linear"` (por defecto), `"inQuad"`, `"outQuad"`, `"inOutQuad"`, `"inCubic"`, `"outCubic"` o `"inOutCubic"`.

### Planos que siguen a un actor

Un plano que sigue a un actor define:

- `actor`: nombre del actor (obligatorio).
- `offset`: desplazamiento `vec3` en el espacio del actor (obligatorio).
- Objetivo de la cámara: `lookAt` (`vec3` en el espacio del actor), `lookAtActor` (nombre de otro actor) o `lookAtBone` (hueso de un ped).
- `roll` y `fov`: inclinación y campo de visión opcionales en grados.

## Ejemplo

```lua
local intro = createCinematic("cinematics/intro.cine")
setCinematicCamera(intro, {
    {
        start = 0,
        letterbox = true,
        keys = {
            { time = 0, position = vec3(2480, -1700, 30), target = vec3(2495, -1680, 14) },
            { time = 6000, position = vec3(2500, -1700, 20), target = vec3(2495, -1680, 14), ease = "inOutQuad" },
        },
    },
    { start = 6000, blend = 1000, actor = "hero", offset = vec3(0, -4, 1.5), lookAtActor = "hero" },
})
```

## Ver también

- [getCinematicCamera (Cliente)](https://wiki.mymp.gg/es/getCinematicCamera.md): Devuelve los planos de cámara de la cinemática.
- [getCinematicShotView (Cliente)](https://wiki.mymp.gg/es/getCinematicShotView.md): Devuelve dónde está la cámara de un plano y hacia dónde mira en un tiempo de la cinemática, con el temblor incluido.
- [setCinematicCameraEnabled (Cliente)](https://wiki.mymp.gg/es/setCinematicCameraEnabled.md): Activa o desactiva la cámara de la cinemática. Desactivada, la reproducción no mueve la cámara y los planos de setCinematicCamera se ignoran.
- [setCameraMatrix (Cliente)](https://wiki.mymp.gg/es/setCameraMatrix.md): Fija la cámara en un punto, mirando a otro, hasta que setCameraTarget la devuelve a un ped.
