Blinking two LEDs in and out of phase

I see! so when case 1 is done the if(done) is true and whichPattern++ is execute - therefore whichPattern is now equal 2. because there is no pattern 2 the default statement in the switch function is happening.
At the default - done is set to be true and whichPattern set to be -1 . then we get into the if(done) statement. Because done is set to be true we indeed go inside that if statement and whichpattern++; turn 'whichPattern' that is equal to -1, to be equal 0 and we again iterate over the switch function...

My English is full of mistakes but I think I got it.
Thanks!