function BP()
script.Parent.CFrame = script.Parent.CFrame * CFrame.new(-.06, 0, 0)
script.Parent.ClickSound:Play()
script.Parent.ClickDetector.MaxActivationDistance = 0
end
function BU()
script.Parent.CFrame = script.Parent.CFrame * CFrame.new(.06, 0, 0)
script.Parent.ClickDetector.MaxActivationDistance = 10
end
function onClicked()
local a = math.random(1, 24)
if a == 1 then
BP()
game.ReplicatedStorage.Coins:Clone().Parent = game.Workspace
script.Parent.Sounds.Coinsound:Play()
wait(3)
BU()
elseif a == 2 then
BP()
game.ReplicatedStorage.Doge:Clone().Parent = game.Workspace
script.Parent.Sounds.Dogesong:Play()
wait(12.669)
BU()
elseif a == 3 then
BP()
game.ReplicatedStorage.Jail:Clone().Parent = game.Workspace
script.Parent.Sounds.Jailsound:Play()
game.ReplicatedStorage.Jail2:Clone().Parent = game.Workspace
wait(5)
BU()
elseif a == 4 then
BP()
script.Parent.Sounds.MoneyParticle:Play()
game.ReplicatedStorage.MoneyParticle:Clone().Parent = game.Workspace
wait(4.5)
BU()
elseif a == 5 then
BP()
script.Parent.Sounds.Dinner:Play()
game.ReplicatedStorage.Dinner:Clone().Parent = game.Workspace
wait(5)
BU()
elseif a == 6 then
BP()
game.ReplicatedStorage.Sign:Clone().Parent = game.Workspace
script.Parent.Sounds.Sign:Play()
wait(7)
game.Workspace.Sign.Sound:Play()
game.ReplicatedStorage.Explode:Clone().Parent = game.Workspace
wait(2)
BU()
elseif a == 7 then
BP()
game.ReplicatedStorage.Laser:Clone().Parent = game.Workspace
script.Parent.Sounds.Laser:Play()
wait(3)
BU()
elseif a == 8 then
BP()
game.ReplicatedStorage.DarkMatter:Clone().Parent = game.Workspace
wait(10)
BU()
elseif a == 9 then
BP()
game.ReplicatedStorage.Lava:Clone().Parent = game.Workspace
wait(7)
BU()
elseif a == 10 then
BP()
game.ReplicatedStorage.Phonebooth:Clone().Parent = game.Workspace
wait(10)
BU()
elseif a == 11 then
BP()
game.ReplicatedStorage.Rotating:Clone().Parent = game.Workspace
wait(10)
BU()
elseif a == 12 then
BP()
game.ReplicatedStorage.PlatformStand:Clone().Parent = game.Workspace
script.Parent.Sounds.Fall:Play()
wait(5)
BU()
elseif a == 13 then
BP()
game.ReplicatedStorage.Fancy:Clone().Parent = game.Workspace
script.Parent.Sounds.Fancy:Play()
wait(10)
script.Parent.Sounds.Fancy:Stop()
BU()
elseif a == 14 then
BP()
game.ReplicatedStorage.what:Clone().Parent = game.Workspace
script.Parent.Sounds.what:Play()
wait(2.808)
BU()
elseif a == 15 then
BP()
game.ReplicatedStorage.woah:Clone().Parent = game.Workspace
game.ReplicatedStorage.woah2:Clone().Parent = game.Workspace
script.Parent.Sounds.woah:Play()
wait(10)
script.Parent.Sounds.woah:Stop()
BU()
elseif a == 16 then
BP()
game.ReplicatedStorage.Toilet:Clone().Parent = game.Workspace
script.Parent.Sounds.Plop:Play()
wait(3)
BU()
elseif a == 17 then
BP()
script.Parent.Sounds.FUN:Play()
wait(.5)
script.Parent.Fire.Enabled = true
wait(2)
script.Parent.Fire.Enabled = false
wait(1)
game.ReplicatedStorage.Uranium:Clone().Parent = game.Workspace
wait(2)
game.ReplicatedStorage.Bombs:Clone().Parent = game.Workspace
wait(2)
game.ReplicatedStorage.Explode:Clone().Parent = game.Workspace
BU()
elseif a == 18 then
BP()
script.Parent.Sounds.Dance:Play()
game.ReplicatedStorage.Dance:Clone().Parent = game.Workspace
game.ReplicatedStorage.Dance2:Clone().Parent = game.Workspace
wait(18)
script.Parent.Sounds.Dance:Stop()
BU()
elseif a == 19 then
BP()
game.ReplicatedStorage.Record:Clone().Parent = game.Workspace
wait(13)
BU()
elseif a == 20 then
BP()
game.ReplicatedStorage.Lava2:Clone().Parent = game.Workspace
wait(5.9)
BU()
elseif a == 21 then
BP()
game.ReplicatedStorage.Piano:Clone().Parent = game.Workspace
wait(10)
BU()
elseif a == 22 then
BP()
game.ReplicatedStorage.Diamonds:Clone().Parent = game.Workspace
script.Parent.Sounds.Minecraft:Play()
wait(7)
game.ReplicatedStorage.Steve1:Clone().Parent = game.Workspace
wait(5)
game.ReplicatedStorage.Steve2:Clone().Parent = game.Workspace
wait(8)
game.ReplicatedStorage.Steve3:Clone().Parent = game.Workspace
wait(2)
game.ReplicatedStorage.Steve4:Clone().Parent = game.Workspace
wait(5)
script.Parent.Sounds.Minecraft:Stop()
game.Workspace.Steve1:Destroy()
game.Workspace.Diamonds:Destroy()
game.Workspace.Steve2:Destroy()
game.Workspace.Steve3:Destroy()
game.Workspace.Steve4:Destroy()
BU()
elseif a == 23 then
BP()
game.ReplicatedStorage.Barry:Clone().Parent = game.Workspace
script.Parent.Sounds.yalikejazz:Play()
wait(3)
script.Parent.Sounds.Jazz:Play()
wait(10)
game.Workspace.Barry:Destroy()
script.Parent.Sounds.Jazz:Stop()
BU()
elseif a == 24 then
BP()
script.Parent.Sounds.Thomas:Play()
wait(3)
game.ReplicatedStorage.Thomas:Clone().Parent = game.Workspace
wait(4.3)
game.Workspace.Thomas:Destroy()
script.Parent.Sounds.Thomas:Stop()
BU()
end
end
script.Parent.ClickDetector.MouseClick:connect(onClicked)
So basically if you look at the BP function then you can see that I make the MaxActivationDistance for the click detector 0. Then after a certain amount of time (depending on the outcome) the BU goes into play and reactivates the button essentially. This is my attempt to make it so the button isn't spam clicked. However this doesn't work all the time and I want to replace this system with debounce, however, I don't know how to and using debounce for every outcome would be very tedious. It is important to have the wait time be flexible so the debounce works for each outcome.
