if(obstacle_right && obstacle_left && bumper_left && bumper_right)

|| sollte das wohl sein, oder?

Ich bin mir nicht sicher ob man in den Eventhandlern blockierende Funktionen aufrufen sollte. Besser wäre hier ein Flag das in Main() geprüft werden kann.

Gruß

mic