@Override
    public void keyPressed(KeyEvent e) {
        if (!changed) {
            if (e.getKeyCode() == KeyEvent.VK_DOWN) {
                selection = (selection + 1) % choices.size();
            } else if (e.getKeyCode() == KeyEvent.VK_UP) {
                selection = Math.abs(selection - 1) % choices.size();
            } else if (e.getKeyCode() == KeyEvent.VK_ENTER) {
                reaction.actionPerformed(new ActionEvent(this, selection, "Selection"));
            }
        } else {
            if (e.getKeyCode() == KeyEvent.VK_RIGHT) {
                levelSelection = (levelSelection + 1) % total;
            } else if (e.getKeyCode() == KeyEvent.VK_LEFT) {
                levelSelection = Math.abs(levelSelection - 1) % total;
            } else if (e.getKeyCode() == KeyEvent.VK_ENTER) {
                panel.removeKeyListener(this);
                KirbioGame game = (KirbioGame) panel.getGame();
                panel.addKeyListener(game);
                game.prepareLevel(level);
                game.stopStarting();
            }
        }
    }