ちなみに、otta777さんのプログラムから指定の2行を削除すると、ボタン取得ループがなくなってしまうので「その一瞬に押されているかどうか」での判定になってしまいます。 なので、正しいボタンを押していても、タイミングが違うと終わってしまうのだと思います。