Do you have the code for the LED sequence? Of course it's been done before, and I've made something "similar" but the code depends on which pins the LEDs are connected to and the number of LEDs, etc. My particular version is too complicated to use as an example because it's sound activated (which requires more hardware and software), it's got more than 5 lights, and it's got "variations" such as a having variable number of LEDs on at one time... Sometimes one LED "bounces" back-and-forth, and sometimes two LEDs, etc. (and another variation that's not easy to describe in words).
If you don't have that code study the Blink Example.
Then make the delay time a variable instead of a constant 1000. For now, you can set the variable to 1000, but the point is to use the variable name instead of typing "1000". You can name it whatever you want... You can call it "Wait" or whatever you want. For example, *"Delay(Wait)"*instead of "Delay(1000)". Or, you can have different WaitOn and WaitOff variables if you want. And for now, you can initialize your variable(s) to 1000 in setup() before the code starts running loop().
Then add another LED and add some more similar code to blink the LEDs in sequence.
Then add the other 3 LEDs (or however many you want) and make them all sequence.
Then make add some more code to make it sequence both ways.
If you don't know how to hook-up a pot, look at the Analog Read Serial Example.
To begin with you can simply use the pot reading (0-1023) as your delay time.
Read the pot and update your delay variable at the beginning of the loop.
Or you can map() the 0-1023 pot reading to a delay range of your choice.
After you've got everything working (and after you understand what you're doing) you might want to re-write the code using the method in the Blink Without Delay example.
...You'll only be reading the pot once every time through the loop, so with delays it won't respond "instantly". Using millis() timers like Blink Without Delay makes the loop run faster and it can read the pot more frequently and your program will be more responsive to pot changes.