#include <Servo.h>

//deurtjes
Servo servo1;
Servo servo2;

Servo servo3;
Servo servo4;

int servo1pos = 100;
int servo2pos = 0;
//int servo3pos = 0;

int pwmValue = 100;

int opentijd = 15;

void setup() {
  servo1.attach(9); //deurtjes
  servo2.attach(10);  //deurtjes
  Serial.begin(9600);

  servo3.attach(11);  //schommel
  servo4.attach(5); //beeldje

  pinMode(6, OUTPUT); //lampje

  pinMode(4, INPUT); //knopje

  pinMode (3, OUTPUT);  //lampjes buiten
  digitalWrite (3, HIGH); //lampjes binnen 

  pinMode (8, OUTPUT);
  pinMode (2, OUTPUT);
}

void loop() {
  int buttonState = digitalRead(4);

  //beeldje
  int value = abs(millis()/100 %200 - 100);  
  servo4.write(abs(value));
  Serial.println(value);
  
  if (buttonState == 1) {   
      servo1.write(0);
      servo2.write(100);
      //deurtjes open
      for (int i = 0; i < 100; i++) {
        servo1.write(i);
        servo2.write(100 - i);
        delay(20);  
      }

     //lampjes aan langzaam
     for (int i = 0; i < 100; i++) {
        Serial.println(i * 2.5);
        analogWrite(6, i * 2.5);
       delay(60);
     }

     //lampjes aan snel
     digitalWrite (8, HIGH);
     delay (1000);
     digitalWrite (2, HIGH);
  
     //schommel
     for (int i = 0; i < opentijd * 100; i++) {   
      int value = abs(i %400 - 200);
      servo3.write(value);
      delay(10);    
     }
        
     //lampjes uit snel
     digitalWrite (2, LOW);
     delay (1000);
     digitalWrite (8, LOW);
     
     //lampjes uit langzaam
     for (int i = 100; i >= 0; i--) {
        Serial.println(i * 2.5);
        analogWrite(6, i * 2.5);
        delay(60);
     }
        
     //deurtjes dicht
     for (int i = 100; i >= 0; i--) {
          servo1.write(i);
          servo2.write(100 - i);
          delay(20);
     }
   }
}
