Hey! I'm hallow. I'm a beginner scripter within the ROBLOX platform, and I'm trying to improve my skills within coding so that I can make games on my own in the future. I thought creating a traffic light would be " simple ", so I gave it a try.
Here is my code:
--//Variables
local R = script.Parent.TrafficLight1.Red
local O = script.Parent.TrafficLight1.Orange
local G = script.Parent.TrafficLight1.Green
local R2 = script.Parent.TrafficLight2.Red
local O2 = script.Parent.TrafficLight2.Orange
local G2 = script.Parent.TrafficLight2.Green
local R3 = script.Parent.TrafficLight3.Red
local O3 = script.Parent.TrafficLight3.Orange
local G3 = script.Parent.TrafficLight3.Green
local R4 = script.Parent.TrafficLight4.Red
local O4 = script.Parent.TrafficLight4.Orange
local G4 = script.Parent.TrafficLight4.Green
--\\Variables
--//OG colors
--[[
Red = Maroon
Orange = CGA Brown
Green = Dark Green
]]--
--\\ OG colors
--//Script
while true do
--Traffic Light 1
G.Material = Enum.Material.Neon
wait(25)
G.Material = Enum.Material.SmoothPlastic
wait()
O.Material = Enum.Material.Neon
wait(4)
O.Material = Enum.Material.SmoothPlastic
wait()
R.Material = Enum.Material.Neon
wait()
--\\Traffic Light 1 end
if G.Material == Enum.Material.Neon or O.Material == Enum.Material.Neon then
--Trafficlight2
R2.Material = Enum.Material.Neon
wait()
elseif R.Material == Enum.Material.Neon then
G2.Material = Enum.Material.Neon
wait(25)
G2.Material = Enum.Material.SmoothPlastic
wait()
O2.Material = Enum.Material.Neon
wait(4)
O2.Material = Enum.Material.SmoothPlastic
wait()
R2.Material = Enum.Material.Neon
wait()
--\\TrafficLight2 end
if G2.Material == Enum.Material.Neon or O2.Material == Enum.Material.Neon then
--TrafficLight3
R3.Material = Enum.Material.Neon
wait()
elseif R2.Material == Enum.Material.Neon then
G3.Material = Enum.Material.Neon
wait(25)
G3.Material = Enum.Material.SmoothPlastic
wait()
O3.Material = Enum.Material.Neon
wait(4)
O3.Material = Enum.Material.SmoothPlastic
wait()
R3.Material = Enum.Material.Neon
wait()
--\\Trafficlight 3 end
if G3.Material == Enum.Material.Neon or O3.Material == Enum.Material.Neon then
--TrafficLight4
R4.Material = Enum.Material.Neon
elseif R3.Material == Enum.Material.Neon then
G4.Material = Enum.Material.Neon
wait(25)
G4.Material = Enum.Material.SmoothPlastic
wait()
O4.Material = Enum.Material.Neon
wait(4)
O4.Material = Enum.Material.SmoothPlastic
wait()
R4.Material = Enum.Material.Neon
wait()
--\\TrafficLight4 end
end
end
end
end
The code " works ", as in the colors change and all in the proper order, however when the final light (TrafficLight4) turns red, it goes back to the first traffic light; which does turn green, but the red light is still neon. How do I make it so that when the last traffic light turns red, the first traffic light turns green instead of both green and red?
Thanks, and sorry if I wrote it badly.
