/*Marley Sunrise Sunset Test 1 */

#include <FastLED.h>

static int paletteIndexChange = 1;
#define cyclePin 7
#define dataPin 5
#define Color_Order GRB
#define CHIPSET WS2812B
#define NUM_LEDS 50
#define BRIGHTNESS 200
int runsignal;

CRGB leds[NUM_LEDS];

DEFINE_GRADIENT_PALETTE(sunrise_gp) {
  0, 0, 0, 0,
  18, 98, 0, 0,
  56, 161, 83, 0,
  115, 212, 202, 0,
  179, 255, 253, 213,
  255, 255, 255, 255
};

CRGBPalette256 sunPal = sunrise_gp;
uint8_t paletteIndex = 0;
const int sun[] = {5, 10, 15, 20, 25, 30, 35, 40, 45};
const int sunLength = sizeof(sun) / sizeof(int);

void setup() {

  FastLED.addLeds<CHIPSET, dataPin, Color_Order>(leds, NUM_LEDS);

}
void loop() {

  for (int i = 0; i < sunLength; i++) {
    leds[sun[i]] = ColorFromPalette(sunPal, paletteIndex);

    paletteIndex = paletteIndex + paletteIndexChange + 1;
    
    if (paletteIndex >=255){
      paletteIndexChange = paletteIndexChange * -1;
    }
     if (paletteIndex <=0){
      paletteIndexChange = paletteIndexChange * -1;
    }

  }
  /*runsignal = digitalRead(cyclePin);
    if (runsignal == HIGH) {
    if (paletteIndex > 0) {
      EVERY_N_MILLISECONDS(230) {
        paletteIndex--;
      }
    }
    }
    if (paletteIndex < 255) {
    EVERY_N_MILLISECONDS(230) {
      paletteIndex++;
    }
    }*/

  FastLED.show();
}