@Override public void handleTouchEvent(MainGamePanel game, MotionEvent event) { GameState gameState = (GameState) game.getElements().getComponent(Elements.GAME_STATE); Sounds sounds = (Sounds) game.getElements().getComponent(Elements.SOUNDS); if (gameState.isStateDefeat()) { if (event.getAction() == MotionEvent.ACTION_DOWN) { float eventX = event.getX(); float eventY = event.getY(); // Retry button if (eventX >= buttonLeft && eventX <= buttonRight) { if (eventY <= buttonRetryBottom && eventY >= buttonRetryTop) { sounds.playBarHit(); if (gameState.getPreviousState() == GameState.STATE_GAME) { gameState.setStateGame(); } else { gameState.setStateArcade(); } game.restart(false); } } // Quit to menu button if (eventX >= buttonLeft && eventX <= buttonRight) { if (eventY <= buttonMainMenuBottom && eventY >= buttonMainMenuTop) { sounds.playBarHit(); gameState.setStateMenu(); game.restart(false); } } } } }