I'm making light controls for a stage. This script turns a stage light off and on.
local ClickDetector = script.Parent.ClickDetector
local StageLights = script.Parent.Parent.Parent.Parent.StageLights
function LightSwitch()
if StageLights.BackLeftSpotlight.SpotLight.Brightness==0.2 then
StageLights.BackLeftSpotlight.SpotLight.Brightness = 1
script.Parent.BrickColor= BrickColor.new("Bright yellow")
elseif StageLights.BackLeftSpotlight.SpotLight.Brightness==1 then
StageLights.BackLeftSpotlight.SpotLight.Brightness = 0.2
script.Parent.BrickColor = BrickColor.new("Bronze")
end
end
ClickDetector.MouseClick:connect(LightSwitch)
When I test the game and click on the button (which turns the light on and off), it will change color, but only on my first click. Any more clicks won't change the color again. Anyone know what I'm doing wrong? Thanks in advance.

2 comments
Is the brightness being changed? Check that with a print statement in the first line of the function
try hooking up a remote event to your click detectors are you doing this on filtering enabled?