I'm trying to make a decal shown only if all lights were turned off, otherwise its transparency should just stay 1.
local light1 = game.Workspace.BathRoomLight1.PointLight --Bathroom Checked
local light2 = game.Workspace.MyBedroom.WallLight1.Lightpart.PointLight --My room Checked
local light3 = game.Workspace.LightsM.Part8.PointLight -- Aunt's room Checked
local light4 = game.Workspace.KitchenLight1.LightPart.PointLight --Kitchen Checked
local light5 = game.Workspace.WallLightWater1.Lightpart.PointLight -- Wall Light Water Checked
local light6 = game.Workspace.WallLightTv1.Lightpart.PointLight -- TV Checked
local light7 = game.Workspace.WallLightPc1.Lightpart.PointLight -- PC Checked
local light8 = game.Workspace.Ceilinglight1.LightPart.PointLight -- Ceiling Checked
local light9 = game.Workspace.Light.LightPart.SurfaceLight -- ?? :) Checked
local d = game.Workspace.Display.Decal
local lights = {light1, light2, light3, light4, light5, light6, light7, light8, light9,
--light1,
--light2, ...
}
function Evaluate()
for i = 1, #lights do
if lights[i].Enabled == false then
--we don't do shit
else
break
end
end
d.Transparency = 0
--Show decal
print ("You can see me now")
end
for i = 1, #lights do
lights[i].Changed:Connect(function()
Evaluate()
print ("Triggered")
end)
end

3 comments
thanks, that fixed half of it. Your way does show the decal only when all lights went out BUT it doesn't hide it when a light was turned on again. Think you can help me out one more time?
Edited above - you just need an else clause to turn it off if showDecal is false
Perfect, mate! Appreciate it, working smooth as a baby's you know what :)