Delays not working/sets of code in loop are skiped

You have used Serial.print() for a WHOLE bunch of stuff. Why not use it to show EACH step in your code and the values in the variables used in each step? Then you can easily figure out the errors.

Paul