/**
   * Eventhandling des Registriere Agent ohne Visualisierungs-Button.
   *
   * @param ActionEvent e
   */
  void m_roVButton_actionPerformed(ActionEvent e) {
    try {
      if (m_coordinator.isGameRegisteredAndOpen(m_gameId)) {
        m_parent.writeStatusMessage(
            "Registriere den Agenten "
                + m_agentTF.getText()
                + " beim Spiel "
                + m_coordinator.getGameName(m_gameId));
        /*
         * Erstelle kompletten Pfad der Agentenklasse
         */
        if (m_parameter.containsKey("ScenarioName")) {
          m_scenarioName = (String) m_parameter.get("ScenarioName");
          System.out.println("Parameter ScenarioName vorhanden: " + m_scenarioName);
        } else {
          m_scenarioName = "island";
        }
        String agentClass =
            "scenario."
                + m_scenarioName
                + "."
                + AGENTENORDNER
                + "."
                + (String) m_agentClassCombo.getSelectedItem();
        // + ".class";
        System.out.println("Agent name and location: " + agentClass);

        m_coordinator.registerAgent(
            m_gameId, m_agentTF.getText(), agentClass, m_serverTF.getText());

        m_parent.writeStatusMessage(
            "Registrierung von Agent " + m_agentTF.getText() + " erfolgreich ausgeführt.");
        if ((m_gpp != null) && !m_coordinator.isGameRegisteredAndOpen(m_gameId))
          m_gpp.setAgentRegisterButtonVisible(false);

      } else {
        MessageDialog md =
            new MessageDialog(
                "Agentenregistrierung",
                "Der Agent kann nicht registriert werden, "
                    + "da das Spiel schon geschlossen ist.");
        md.show();
      }
    } catch (Exception ex) {
      MessageDialog md =
          new MessageDialog(
              "Agentenregistrierung",
              "Der Agent konnte nicht registriert werden, "
                  + "bitte beachten sie die Statusmeldung im Hauptfenster.");
      md.show();
      m_parent.writeStatusMessage("Der Agent konnte nicht registriert werden.");
      System.out.println("Der Agent konnte nicht registriert werden.");
      ex.printStackTrace(System.out);
    }
    this.setVisible(false);
    this.dispose();
    //    boolean tesss=m_coordinator.isGameRegisteredAndOpen(m_gameId);
    m_parent.repaintApplication();
  }
  /**
   * Eventhandling des Registriere Agent mit Visualisierungs-Button.
   *
   * @param ActionEvent e
   */
  void m_rwVAgentButton_actionPerformed(ActionEvent e) {
    try {
      /*
       * Check, ob Spiel überhaupt noch offen ist.
       */
      if (m_coordinator.isGameRegisteredAndOpen(m_gameId)) {
        m_parent.writeStatusMessage(
            "Registriere den Agenten "
                + m_agentTF.getText()
                + " beim Spiel "
                + m_coordinator.getGameName(m_gameId));
        /*
         * Delegate für Visualisierungskomponente erstellen
         */
        VisualisationDelegate delegate = null;
        delegate =
            new VisualisationDelegate(
                m_parameter, AgentVisualisation.class, "Agent " + m_agentTF.getText());
        System.out.println(
            "MultiagentSimulatorClient: " + "	Visualisation wird versucht zu registrieren.");

        /*
         * Erstelle kompletten Pfad der Agentenklasse
         */
        if (m_parameter.containsKey("ScenarioName")) {
          m_scenarioName = (String) m_parameter.get("ScenarioName");
        } else {
          m_scenarioName = "islandParallel";
        }

        /*
         * Agent und Visualisierung registrieren
         */
        String agentClass =
            "scenario."
                + m_scenarioName
                + "."
                + AGENTENORDNER
                + "."
                + (String) m_agentClassCombo.getSelectedItem();
        // + ".class";
        m_coordinator.registerAgent(
            m_gameId, m_agentTF.getText(), agentClass, m_serverTF.getText(), delegate);

        /*
         * Visualisierung starten
         */
        if ((m_gpp != null) && !m_coordinator.isGameRegisteredAndOpen(m_gameId))
          m_gpp.setAgentRegisterButtonVisible(false);

        delegate.show();
      } else {
        /*
         * MElde das dem User.
         */
        MessageDialog md =
            new MessageDialog(
                "Agentenregistrierung",
                "Der Agent kann nicht registriert werden, "
                    + "da das Spiel schon geschlossen ist.");
        md.show();
      }
    } catch (Exception ex) {
      MessageDialog md =
          new MessageDialog(
              "Agentenregistrierung",
              "Der Agent konnte nicht registriert werden, "
                  + "bitte beachten sie die Statusmeldung im Hauptfenster.");
      md.show();
      m_parent.writeStatusMessage("Der Agent konnte nicht registriert werden.");
      System.out.println("Der Agent konnte nicht registriert werden.");
      ex.printStackTrace(System.out);
    }
    m_parent.writeStatusMessage(
        "Registrierung von Agent " + m_agentTF.getText() + " erfolgreich ausgeführt.");
    this.setVisible(false);
    this.dispose();
    m_parent.repaintApplication();
  }