public void switchToMenuScreen()
    {
        // CHANGE THE BACKGROUND
        game.getGUIDecor().get(BACKGROUND_TYPE).setState(MENU_SCREEN_STATE);
        
        // DISABLE DECORATIONS OR BUTTONS DEPENDING ON SCREEN FOR EFFICIENCY
        if (game.isCurrentScreenState(SETTINGS_SCREEN_STATE))
        {
            game.getGUIButtons().get(SOUND_MUTE_BOX_BUTTON_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
            game.getGUIButtons().get(SOUND_MUTE_BOX_BUTTON_TYPE).setEnabled(false);
            game.getGUIButtons().get(MUSIC_MUTE_BOX_BUTTON_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
            game.getGUIButtons().get(MUSIC_MUTE_BOX_BUTTON_TYPE).setEnabled(false);
            game.getGUIButtons().get(CHANGE_SPEED_BUTTON_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
            game.getGUIButtons().get(CHANGE_SPEED_BUTTON_TYPE).setEnabled(false);
        } else if (game.isCurrentScreenState(LEVEL_SELECT_SCREEN_STATE))
        {
            game.getGUIDecor().get(MAP_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
            disableScrollButtons();
            disableLevelButtons();
        } else if (game.isCurrentScreenState(GAME_SCREEN_STATE))
        {
            if (data.inProgress())
                game.getAudio().stop(pathXPropertyType.SONG_CUE_GAME_SCREEN.toString());
            else if (data.won())
                game.getAudio().stop(pathXPropertyType.SONG_CUE_WIN.toString());
            game.getAudio().play(pathXPropertyType.SONG_CUE_MENU_SCREEN.toString(), true);
            game.getDataModel().setGameState(MiniGameState.NOT_STARTED);
            game.getDataModel().unpause();
            game.getGUIDecor().get(INFO_DIALOG_BOX_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
            game.getGUIButtons().get(START_BUTTON_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
            game.getGUIButtons().get(START_BUTTON_TYPE).setEnabled(false);
            game.getGUIButtons().get(CLOSE_BUTTON_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
            game.getGUIButtons().get(CLOSE_BUTTON_TYPE).setEnabled(false);
            game.getGUIButtons().get(PAUSE_BUTTON_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
            game.getGUIButtons().get(PAUSE_BUTTON_TYPE).setEnabled(false);
            game.getGUIButtons().get(HOME_BUTTON_TYPE).setX(HOME_BUTTON_X);
            game.getGUIButtons().get(HOME_BUTTON_TYPE).setY(0);
            game.getGUIButtons().get(EXIT_BUTTON_TYPE).setX(EXIT_BUTTON_X);
            game.getGUIButtons().get(EXIT_BUTTON_TYPE).setY(0);
            enableSpecialButtons(false, data.getSpecialsCounter());
            disableScrollButtons();
        } else if (game.isCurrentScreenState(HELP_SCREEN_STATE))
        {
            game.getGUIDecor().get(HELP_DESCRIPTION_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
        }
        
        // DEACTIVATE THE HOME BUTTON
        game.getGUIButtons().get(HOME_BUTTON_TYPE).setState(pathXTileState.INVISIBLE_STATE.toString());
        game.getGUIButtons().get(HOME_BUTTON_TYPE).setEnabled(false);
        
        game.setCurrentScreenState(MENU_SCREEN_STATE);
        
        // ACTIVATE THE MENU CONTROLS
        game.getGUIButtons().get(PLAY_BUTTON_TYPE).setState(pathXTileState.VISIBLE_STATE.toString());
        game.getGUIButtons().get(PLAY_BUTTON_TYPE).setEnabled(true);
        game.getGUIButtons().get(RESET_BUTTON_TYPE).setState(pathXTileState.VISIBLE_STATE.toString());
        game.getGUIButtons().get(RESET_BUTTON_TYPE).setEnabled(true);
        game.getGUIButtons().get(SETTINGS_BUTTON_TYPE).setState(pathXTileState.VISIBLE_STATE.toString());
        game.getGUIButtons().get(SETTINGS_BUTTON_TYPE).setEnabled(true);
        game.getGUIButtons().get(HELP_BUTTON_TYPE).setState(pathXTileState.VISIBLE_STATE.toString());
        game.getGUIButtons().get(HELP_BUTTON_TYPE).setEnabled(true);
    }