If this is a localscript, you can use a debounce:
local part = game.Workspace.Stud
local debounce = false
script.Parent.MouseButton1Click:Connect(function()
if debounce == true then return end
debounce = true
local number = math.random(1,9)
if number == 1 then
part.Transparency = 0.1
elseif number == 2 then
part.Transparency = 0.2
elseif number == 3 then
part.Transparency = 0.3
elseif number == 4 then
part.Transparency = 0.4
elseif number == 5 then
part.Transparency = 0.5
elseif number == 6 then
part.Transparency = 0.6
elseif number == 7 then
part.Transparency = 0.7
elseif number == 8 then
part.Transparency = 0.8
elseif number == 9 then
part.Transparency = 0.9
end
wait(120)
debounce = false
end)
If this is a server script, you can add a debounce to the part as a boolvalue since that is the object you are affecting.
local part = game.Workspace.Stud
local debounce = part.BoolValue or Instance.new("BoolValue", part)
script.Parent.MouseButton1Click:Connect(function()
if debounce.Value == true then return end
debounce.Value = true
local number = math.random(1,9)
if number == 1 then
part.Transparency = 0.1
elseif number == 2 then
part.Transparency = 0.2
elseif number == 3 then
part.Transparency = 0.3
elseif number == 4 then
part.Transparency = 0.4
elseif number == 5 then
part.Transparency = 0.5
elseif number == 6 then
part.Transparency = 0.6
elseif number == 7 then
part.Transparency = 0.7
elseif number == 8 then
part.Transparency = 0.8
elseif number == 9 then
part.Transparency = 0.9
end
wait(120)
debounce.Value = false
end)