Pular para o conteúdo

createLight

Cliente Luzes OOP Light.create(...)Light(...)

Cria uma luz pontual numa posição do mundo.

light createLight ( number tipo, number x, number y, number z [, number raio = 3, number r = 255, number g = 0, number b = 0, number dirX = 0, number dirY = 0, number dirZ = 0, bool projetaSombra = false ] )
NomeTipoPadrãoDescrição
tiponumber—Tipo da luz, que decide o modo de desenho usado. Não há validação: qualquer número é aceito e devolvido depois por getLightType.
x, y, znumber—Posição da luz no mundo.
raionumber3Alcance da luz, em unidades do jogo.
rnumber255Canal vermelho, 0 – 255.
gnumber0Canal verde, 0 – 255.
bnumber0Canal azul, 0 – 255.
dirX, dirY, dirZnumber0Vetor de direção da luz. Só importa para os tipos que apontam para algum lado.
projetaSombraboolfalseAceito por compatibilidade com o MTA, mas ignorado: a luz nunca projeta sombra.

Os valores de cor não são limitados: o número é truncado para inteiro e só o byte mais baixo é mantido (300 vira 44). Um valor de cor negativo, uma string que não é número ou um NaN registra um aviso e devolve false. Números passados como string ("255") são aceitos.

O elemento da luz, ou false se ela não pôde ser criada.

-- luz azul piscando em cima do jogador
local x, y, z = getElementPosition(localPlayer)
local giroflex = createLight(0, x, y, z + 1.5, 8, 0, 80, 255)
setTimer(function()
if not isElement(giroflex) then return end
local r = getLightColor(giroflex)
if r == 0 then
setLightColor(giroflex, 255, 0, 0)
else
setLightColor(giroflex, 0, 80, 255)
end
end, 400, 0)