コード例 #1
0
ファイル: Moteur.java プロジェクト: nSwane/Pingouin
  private void annuler() {
    // Recuperation du contexte precedent
    System.out.println("moteur : annuler");
    precD = f.annuler();
    if (precD != null) {
      precD.setRefairePossible(true);
      // Mise a jour du contexte courant
      liaison.setDonnees(precD);

      for (int o = 0; o < d.getNbJoueurs(); o++) {
        ordi[o] = new Ordinateur(liaison.getDonnees(), precD.getJoueurs()[o].getDifficulte());
      }
      // ordi = new Ordinateur(liaison.getDonnees());

      // Recuperation des coordonnees du pengouin
      Coordonnees cx = precD.getCoordPingouinAcc();

      // Mise a jour des cases accessibles
      if (cx != null) {
        precD.getTerrain().annulerCasesAccessibles(cx);
      }
      tabj = precD.getJoueurs();
      //			System.out.println("JC : "+tabj[precD.getJoueurCourant()].getNom());
      //			System.out.println("PR : "+tabj[precD.getJoueurCourant()].getPingouinsRestants());
      d = precD;
    }
  }
コード例 #2
0
ファイル: Moteur.java プロジェクト: nSwane/Pingouin
  public void run() {

    do {
      liaison.attendre();

      d = liaison.getDonnees();
      tabj = d.getJoueurs();

      //        	if(a == Action.Sauvegarder || a == Action.Charger
      //        	|| a == Action.JouerCoup || a == Action.CaseAccessibles
      //        	|| a == Action.AnnulerCaseAccessibles){
      //        		f.viderRefaire();
      //        	}
      if (d.isViderPile()) {
        f.viderRefaire();
      }
      d.setViderPile(false);

      liaison.setActionPrec(d.getAction());

      System.out.println("[Moteur] Action : " + d.getAction());
      switch (d.getAction()) {
        case ListerFichiers: // Liste des fichiers sauvegardes
          String[] s = f.listerFichier();
          d.setListeFichier(s);

          break;

        case Charger:
          System.out.println("[Moteur] Charger() --> perso ? : " + d.isPartiePerso());
          this.charger();
          break;

        case ChargerApercu:
          this.chargerApercu();
          break;

        case Sauvegarder:
          this.sauvegarder();
          break;

        case CaseAccessibles:
          // Recuperation des coordonnees du pengouin
          Coordonnees c = d.getCoordPingouinAcc();

          // Mise a jour des cases accessibles
          d.getTerrain().casesAccessibles(c);

          break;

        case AnnulerCaseAccessibles:
          // Recuperation des coordonnees du pengouin
          Coordonnees cA = d.getCoordPingouinAcc();

          // Mise a jour des cases accessibles
          d.getTerrain().annulerCasesAccessibles(cA);

          break;

        case JouerCoup:
          this.jouerCoup();
          break;

        case Annuler:
          this.annuler();
          break;

        case Refaire:
          this.refaire();
          break;

        case Conseil:
          this.conseil();
          break;

        case PlacerPingouin:
          this.placerPingouin();
          break;

        case Quitter:
          continuer = false;
          break;

        case SupprimerSauvegarde:
          this.supprimerSauvegarde();
          break;

        default:
          break;
      }
      liaison.notifierMiseAJour();
    } while (continuer);
  }