Why does adding an 'if' effect my state machine?

Yes, all the inputs have pulldown resistors so I don't know where this random value is coming from. It's very strange. I know there's lots of problems with my code in general, but I tend to post here when something particularly weird comes up like this problem. The line:
"Serial.print (digitalRead (ChargeButtonPin)" should yield either a 0 or a 1, and it does on the first line, and then, 3 lines later, printing the exact thing to serial monitor yields "08096" or similar random interger. The comments are just for my reference and I'll probably take them out once its working. I could up the baud rate too if I got too worried about it, it's just default because I haven't changed it.