コード例 #1
0
ファイル: Partie.java プロジェクト: Alcidauk/SmallWorldUtbm
  /** Demande aux joueurs ayant des unités en main de les placer */
  public boolean deploiementSuivant() {
    int nextJoueur =
        (indexSauvJoueurEnCours + 1) == lstJoueurs.size() ? 0 : (indexSauvJoueurEnCours + 1);

    for (; indexJoueurEnCours < lstJoueurs.size(); indexJoueurEnCours++) {
      if (indexJoueurEnCours == nextJoueur) {
        continue;
      }

      joueurEnCours = lstJoueurs.get(indexJoueurEnCours);

      Peuple p = joueurEnCours.getPeuple();

      if (p != null && p.getNbUniteEnMain() > 0) {
        Game.getInstance().showTemp(joueurEnCours.getNom() + " se redéploie.");

        return true;
      }
    }

    indexJoueurEnCours = indexSauvJoueurEnCours;
    joueurEnCours = lstJoueurs.get(indexSauvJoueurEnCours);

    return false;
  }
コード例 #2
0
ファイル: Partie.java プロジェクト: Alcidauk/SmallWorldUtbm
  /**
   * Passe un peuple se trouvant sur le jeu dans le tas
   *
   * @param peuple Peuple à remettre
   */
  public void remettreBoite(Peuple peuple) {
    // Recherche de la classe du peuple
    Iterator<Class<? extends Peuple>> it = peuplesPris.iterator();
    Class<? extends Peuple> peupleClass = null;

    while (it.hasNext() && peupleClass == null) {
      Class<? extends Peuple> tmp = it.next();

      if (tmp.isInstance(peuple)) {
        peupleClass = tmp;
      }
    }

    peuplesPris.remove(peupleClass);
    peuplesDispo.add(peupleClass);

    // Recherche de la classe du pouvoir
    Iterator<Class<? extends Pouvoir>> ite = pouvoirsPris.iterator();
    Class<? extends Pouvoir> pouvoirClass = null;

    while (ite.hasNext() && pouvoirClass == null) {
      Class<? extends Pouvoir> tmp = ite.next();

      if (tmp.isInstance(peuple.getPouvoir())) {
        pouvoirClass = tmp;
      }
    }

    pouvoirsPris.remove(pouvoirClass);
    pouvoirsDispo.add(pouvoirClass);
  }
コード例 #3
0
ファイル: Partie.java プロジェクト: Alcidauk/SmallWorldUtbm
  /**
   * Récupère toutes les unités placées sur les territoires du joueur à l'exception d'une par
   * territoire et les places dans sa main
   */
  public void miseEnMain() {
    Peuple p = joueurEnCours.getPeuple();

    // Récupération des unités du plateau
    Iterator<Territoire> it = p.getTerritoiresOccupes().iterator();

    while (it.hasNext()) {
      Territoire t = it.next();

      int nb = t.getNbUnite();

      t.setNbUnite(1);

      p.addNbUniteEnMain(nb - 1);
    }

    // Application des bonus
    p.calcBonusUniteAttaque();
  }