const int ledPins[] = {10, 11, 12, 13};
const int buttonPin = 7;
int pattern = 0;
void setup() {
for(int i = 0; i < 4; i++) {
pinMode(ledPins[i], OUTPUT);
}
pinMode(buttonPin, INPUT);
}
void loop() {
int buttonState = digitalRead(buttonPin);
if(buttonState == HIGH) {
pattern++;
}
delay(50);
// Pattern 1
if(pattern % 4 == 0) {
for(int i = 0; i < 4; i++) {
digitalWrite(ledPins[i], HIGH);
delay(1000);
digitalWrite(ledPins[i], LOW);
}
}
// Pattern 2
if(pattern % 4 == 1) {
for(int i = 0; i < 3; i++) {
digitalWrite(ledPins[i], HIGH);
digitalWrite(ledPins[i+1], HIGH);
delay(1000);
digitalWrite(ledPins[i], LOW);
digitalWrite(ledPins[i+1], LOW);
}
}
// Pattern 3
if(pattern % 4 == 2) {
for(int i = 3; i >= 0; i--) {
digitalWrite(ledPins[i], HIGH);
delay(1000);
digitalWrite(ledPins[i], LOW);
}
}
// Pattern 4
if(pattern % 4 == 3) {
for(int i = 3; i > 0; i--) {
digitalWrite(ledPins[i], HIGH);
digitalWrite(ledPins[i-1], HIGH);
delay(1000);
digitalWrite(ledPins[i], LOW);
digitalWrite(ledPins[i-1], LOW);
}
}
}