private void Update() { switch (ControllerState) { case GameController.State.Enter: if (step == 0) { p.PaddleStatus = Paddle.Status.Enabled; if (countdown == null) { countdown = CountDown.New(); countdown.Begin( () => { canContinue = true; } ); } step++; } if (step == 1) { if (canContinue) { step = 0; levelTimer.SetStartOffset(); ControllerState = GameController.State.Execute; } } return; case GameController.State.Execute: if (step == 0) { p.PaddleState = Paddle.State.Serve; step++; return; } if (step == 1) { levelTimer.PrintTime(); return; } return; case GameController.State.Exit: return; default: return; } }