in the code below, it finds a sound, and it detects weither or not its enabled. Both prints how up when I enable and unable it, but the transparency never changes.
if script.Parent.Parent.Handle.Output.FireSound.Playing == true then while true do script.Parent.Transparency = 1 wait(0.1) script.Parent.Transparency = 0 end print("Flashing") else script.Parent.Transparency = 1 print("Off") end
Your issue is with the way your while statement is setup. You're never waiting after the second transparency change so it's immediately running the loop again changing the transparency back. Easy fix. Just insert another wait.
while true do script.Parent.Transparency = 1 wait(.1) script.Parent.Transparency = 0 wait(.1) end