     // The switch is not active.
     return -1;
 }
+
+
+/**
+ * Cycles LEDs on and off in a decorative pattern while waiting for player input.
+ */
+void playLightShow() {
+
+    // Cycle lights.
+    for (int i = 0; i < QTY; i++) {
+
+        // Get the last position in the array.
+        int last = QTY - 1 - i;
+
+        // Turn off previous lights.
+        if (i-1 >= 0) {
+            digitalWrite(LEDS[i-1], LOW);
+            digitalWrite(LEDS[last+1], LOW);
+        }
+
+        // Turn on current lights.
+        digitalWrite(LEDS[i], HIGH);
+        digitalWrite(LEDS[last], HIGH);
+
+        // Wait before cycling the next set of lights.
+        delay(LIGHT_DELAY);
+    }
+
+    // Turn off final set of lights.
+    digitalWrite(LEDS[0], LOW);
+    digitalWrite(LEDS[QTY-1], LOW);
+}

 * Control the Arduino.
 */
void loop() {
    // Check if a button switch was pressed.
    int simonLed = getSimonLed(analogRead(BUTTONS));
    if (DEBUG) {

const int SIMON_2 = 4;
const int SIMON_3 = 3;
const int SIMON_4 = 2;
const int QTY = 7;
const int LEDS[QTY] = {RED_1, RED_2, RED_3, SIMON_1, SIMON_2, SIMON_3, SIMON_4};

// Define switch pin positions.
const int TILT = 10;
const int BUTTONS = A1;

// Define game settings speed.
const int LIGHT_DELAY = 700;
volatile boolean gameStart = false;


/**
