示例#1
0
  /**
   * Permet de retirer un joueur de l'equipe. Corollaire : Le joueur quittera egalement son
   * emplacement.
   *
   * @param joueur le joueur
   */
  public void retirerJoueur(Joueur joueur) {
    // effacement
    joueurs.remove(joueur);

    // quitte l'emplacement
    if (joueur.getEmplacement() != null) joueur.getEmplacement().retirerJoueur();

    // quitte l'equipe
    joueur.setEquipe(null);
  }
示例#2
0
  /**
   * Permet d'ajouter un joueur dans l'équipe à un emplacement particulier.
   *
   * @param joueur le joueur
   * @param ej l'emplacement
   * @throws EmplacementOccupeException
   */
  public void ajouterJoueur(Joueur joueur, EmplacementJoueur ej) throws EmplacementOccupeException {
    if (joueur == null) throw new IllegalArgumentException();

    if (ej == null) throw new IllegalArgumentException();

    if (ej.getJoueur() != null) throw new EmplacementOccupeException("EmplacementJoueur occupé");

    // on retire le joueur de son ancienne equipe
    if (joueur.getEquipe() != null) joueur.getEquipe().retirerJoueur(joueur);

    // on l'ajout dans la nouvelle equipe
    joueurs.add(joueur);

    // on modifier sont equipe
    joueur.setEquipe(this);

    // on lui attribut le nouvel emplacement
    joueur.setEmplacementJoueur(ej);
  }