M MY Multiplayer: Wiki
Lado
Tipo

createEffect

Compartilhado

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

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

Parâmetros

NomeTipoDescrição
namestringNome do efeito, como um pack ou engineAddEffects o registrou. De 1 a 255 bytes.
x, y, zfloatPosição no mundo, três números ou um vec3.
rx, ry, rzfloatRotaçã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

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 MTARecebe só nome, posição e rotação. Cor, escala e evoluções mudam depois com setEffectColor, setEffectScale e setEffectEvolution.

Veja também