I have a code here where when you step on a block, it diminishes in size until it goes away completely, and then collision turns off. It stays like that, always. What I want to do is append it to where if someone says "reset", it will perform the code after that part. I've added a while loop in the middle, but I don't know what to put inside it.
local debounce = true
local d = script.Parent.Decal
t = 0.05
function onTouched(hit)
if (debounce == true) then
debounce = false
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x-0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z-0.05)
script.Parent.CanCollide = false
script.Parent.Transparency = 1
d.Parent = nil
while (1 == 1)
{
if --Someone says "reset"
}
script.Parent.CanCollide = true
script.Parent.Transparency = 0
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
wait(t)
script.Parent.Mesh.Scale = Vector3.new(script.Parent.Mesh.Scale.x+0.05,script.Parent.Mesh.Scale.y,script.Parent.Mesh.Scale.z+0.05)
d.Parent = script.Parent
script.Parent.CanCollide = true
script.Parent.Mesh.Scale = Vector3.new(1,1,1)
script.Parent.Transparency = 0
debounce = true
end
end
connection = script.Parent.Touched:connect(onTouched)

3 comments
Do you know what a for loop is?
I believe so. As long as this is true, that will happen?
I've added a while loop to the code, as I now know how to get it to repeatedly check for something, but I don't know what to put in there.