# setCinematicCamera (Cliente)

> Define os planos de câmera que a cinemática dirige durante a reprodução. Substitui os planos anteriores.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Função Lua
- **Lado**: Cliente
- **Categoria**: Cinemáticas
- **URL**: https://wiki.mymp.gg/pt/setCinematicCamera

## Sintaxe

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

## Parâmetros

| Nome | Tipo | Descrição |
| --- | --- | --- |
| `cinematic` | `cinematic` | A cinemática. |
| `shots` | `table` | Lista de planos, em ordem de `start`. Uma lista vazia tira a câmera da cinemática. |

## Retorno

`true` se aplicou. `false` se a tabela é inválida, com um aviso dizendo o motivo.

### Campos comuns do plano

Os tempos são da cinemática, em ms. Cada plano começa depois que o anterior para:

- `start`: quando entra (obrigatório).
- `blend`: ms para misturar a partir do plano anterior. `0` é um corte.
- `stop`: quando para. Sem ele, vai até o próximo plano; depois de parar, a câmera fica na última vista.
- `shake`: tremor em metros, `0` por padrão. `shakeSpeed`: frequência em Hz, `12` por padrão.
- `letterbox`: `true` mostra as faixas de tela larga do SA durante o plano.

### Planos de trajeto

Um plano de trajeto define `keys` (lista de chaves em ordem de tempo):

- `time`: instante da chave em ms (obrigatório).
- `position` e `target`: coordenadas `vec3` (obrigatórios).
- `roll`: inclinação em graus (`0` por padrão).
- `fov`: campo de visão em graus, acima de `0` e abaixo de `180` (`70` por padrão).
- `smooth`: `true` segue a curva de cutscene do SA; `false` vai em linha reta até a próxima chave.
- `ease`: interpolação até a próxima chave — `"linear"` (padrão), `"inQuad"`, `"outQuad"`, `"inOutQuad"`, `"inCubic"`, `"outCubic"` ou `"inOutCubic"`.

### Planos seguindo um ator

Um plano que segue um ator define:

- `actor`: nome do ator (obrigatório).
- `offset`: deslocamento `vec3` no espaço do ator (obrigatório).
- Alvo da câmera: `lookAt` (`vec3` no espaço do ator), `lookAtActor` (nome de outro ator) ou `lookAtBone` (osso de um ped).
- `roll` e `fov`: inclinação e campo de visão opcionais em graus.

## Exemplo

```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" },
})
```

## Veja também

- [getCinematicCamera (Cliente)](https://wiki.mymp.gg/pt/getCinematicCamera.md): Devolve os planos de câmera da cinemática.
- [getCinematicShotView (Cliente)](https://wiki.mymp.gg/pt/getCinematicShotView.md): Devolve onde a câmera de um plano está e para onde olha num tempo da cinemática, com o tremor.
- [setCinematicCameraEnabled (Cliente)](https://wiki.mymp.gg/pt/setCinematicCameraEnabled.md): Liga ou desliga a câmera da cinemática. Desligada, a reprodução não move a câmera e os planos de setCinematicCamera são ignorados.
- [setCameraMatrix (Cliente)](https://wiki.mymp.gg/pt/setCameraMatrix.md): Fixa a câmera num ponto, olhando para outro, até setCameraTarget devolvê-la a um ped.
