Elseif doesn't work?

while true do
wait(2)
if m7.Visible == true then
	m7.Visible = false
	m7v.Visible = true
elseif m7.Visible == false then
	m6.Visible = false
	m6v.Visible = true
elseif m6.Visible == false then
	m5.Visible = false
	m5v.Visible = true
elseif m5.Visible == false then
	m4.Visible = false
	m4v.Visible = true
elseif m4.Visible == false then
	m3.Visible = false
	m3v.Visible = true
elseif m3.Visible == false then
	m2.Visible = false
	m2v.Visible = true
elseif m2.Visible == false then
	m1.Visible = false
	m1v.Visible = true
elseif m1.Visible == false then
	
end

	


	


end 

This is the code (it just check every x seconds if the last image was changed if it was changed, change the next.)

1 Like

The last “elseif” is wrong, so here’s the code:

while true do
	wait(2)
	if m7.Visible == true then
		m7.Visible = false
		m7v.Visible = true
	elseif m7.Visible == false then
		m6.Visible = false
		m6v.Visible = true
	elseif m6.Visible == false then
		m5.Visible = false
		m5v.Visible = true
	elseif m5.Visible == false then
		m4.Visible = false
		m4v.Visible = true
	elseif m4.Visible == false then
		m3.Visible = false
		m3v.Visible = true
	elseif m3.Visible == false then
		m2.Visible = false
		m2v.Visible = true
	elseif m2.Visible == false then
		m1.Visible = false
		m1v.Visible = true
	else m1.Visible == false then
	
	end
end

I think you should use tables and loops to do this:

local images = {
    m1;
    m2;
    m3;
    m4;
    -- etc
}

while true do
    for i,v in ipairs(images) do
        (images[i - 1] or images[#images]).Visible = false
        v.Visible = true
    end
    wait(2)
end