The script is meant to lower the Saturation to -1, then when it hits -1 it is meant to stop. However, it continues to lower the saturation, and does not stop.
How can I make it stop at -1?
local C = game.Lighting.ColorCorrection
script.Parent.DiseaseValues.Cure1.Colourblind.Value = false
script.Parent.DiseaseValues.DiseaseTotal.Counter.Value = 1
i = 0.5
while true do
i = i - 0.1
wait(1)
C.Saturation = i
if i == -1 then
break
end
end

2 comments
Since you know it should stop at -1 why not just use a numerical loop?
Obviously had a dumb moment. I switched it to a for loop.