# createEffect (Compartilhado)

> Cria um efeito de partículas no mundo. No servidor, todos os clientes o veem; num cliente, só esse cliente.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Função Lua
- **Lado**: Compartilhado
- **Categoria**: Efeitos
- **URL**: https://wiki.mymp.gg/pt/createEffect

## Sintaxe

```lua
effect|false createEffect(string name, float x, y, z [, float rx, ry, rz = 0, 0, 0])
```

## Parâmetros

| Nome | Tipo | Descrição |
| --- | --- | --- |
| `name` | `string` | Nome do efeito, como um pack ou `engineAddEffects` o registrou. De 1 a 255 bytes. |
| `x, y, z` | `float` | Posição no mundo, três números ou um vec3. |
| `rx, ry, rz` | `float` | Rotação em graus, três números ou um vec3. *(padrão: `0, 0, 0`)* |

## Retorno

O elemento `effect` criado, ou `false` se não pôde ser criado. Num cliente, também `false` quando nenhum efeito tem esse nome.

Para que o efeito siga um elemento, prenda-o com `attachElements`; o socket pode ser um osso de um ped ou uma peça de um veículo ou objeto. Enquanto o alvo não está carregado ou o efeito está fora da dimensão em foco, ele espera e volta a tocar com a mesma cor, escala e evoluções.

Um efeito criado por um cliente é destruído quando termina ou quando o alvo some. Um efeito do servidor fica até o servidor destruí-lo; um cliente que entra depois não vê um efeito de uma vez só que já terminou.

## Exemplo

```lua
addCommandHandler("fogo", function()
    local pos = getElementPosition(localPlayer)
    local fire = createEffect("fire_large", pos.x, pos.y + 3, pos.z - 1)
    setTimer(stopEffect, 5000, 1, fire)
end)
```

### Vindo do MTA

Recebe só nome, posição e rotação. Cor, escala e evoluções mudam depois com `setEffectColor`, `setEffectScale` e `setEffectEvolution`.

## Veja também

- [stopEffect (Compartilhado)](https://wiki.mymp.gg/pt/stopEffect.md): Para um efeito: ele deixa de emitir e as partículas que já existem terminam.
- [setEffectColor (Compartilhado)](https://wiki.mymp.gg/pt/setEffectColor.md): Tinge um efeito com uma cor.
- [attachElements (Compartilhado)](https://wiki.mymp.gg/pt/attachElements.md): Pendura um elemento em outro. A partir daí ele segue o alvo até ser solto.
- [engineAddEffects (Cliente)](https://wiki.mymp.gg/pt/engineAddEffects.md): Registra os efeitos de partículas de um arquivo do recurso, para que createEffect os use por nome.
