private void conseil() { if (!d.joueurCourant().estOrdi()) { if (d.isPlacementTermine()) { ordi[d.getJoueurCourant()].prochainCoup(); d.setCoordConseilPingouinDep( new Coordonnees(d.getCoordPingouinDep().getI(), d.getCoordPingouinDep().getJ())); d.setCoordConseilPingouinArr( new Coordonnees(d.getCoordPingouinArr().getI(), d.getCoordPingouinArr().getJ())); System.out.println( "Conseil: de " + d.getCoordPingouinDep() + " vers " + d.getCoordPingouinArr()); } else { // System.out.println("donnees du moteur : " + d); // d.getTerrain().afficher(); ordi[d.getJoueurCourant()].placerPingouin(); d.setCoordConseilPingouinInitial( new Coordonnees( d.getCoordPingouinInitial().getI(), d.getCoordPingouinInitial().getJ())); System.out.println("Conseil: de " + d.getCoordConseilPingouinInitial()); System.out.println( "Tuile conseil : " + d.getTerrain() .consulter( d.getCoordConseilPingouinInitial().getI(), d.getCoordConseilPingouinInitial().getJ())); } } }
private void placerPingouin() { // Recuperation du contexte courant copieDP = liaison.getDonnees().copie(); if (d.getJoueurs()[d.getJoueurCourant()].getDifficulte() != ordi[d.getJoueurCourant()].getDifficulte()) { ordi[d.getJoueurCourant()] = new Ordinateur(d, d.getJoueurs()[d.getJoueurCourant()].getDifficulte()); } if (tabj[d.getJoueurCourant()].estOrdi()) ordi[d.getJoueurCourant()].placerPingouin(); // Recuperation des coordonnees du pengouin Coordonnees ci = d.getCoordPingouinInitial(); // Placement du pengouin if (tabj[d.getJoueurCourant()].ajouterPengouin(ci) < 0) { System.out.println(tabj[d.getJoueurCourant()].getNom() + " : Placement impossible"); return; } else { d.setAnnulerPossible(true); // Sauvegarde du contexte avant placement pour une eventuelle recuperation f.empilerAnnuler(copieDP); // Si tous les placements sont termines, l'indiquer aux autres if (placementTermine()) { d.setPlacementPingouinTermine(placementTermine()); d.getTerrain().verifierBlocages(tabj); // f.viderAnnuler(); } // System.out.println(placementTermine()); // Mise a jour du joueur courant if (d.getJoueurCourant() == d.getNbJoueurs() - 1) { d.setJoueurCourant(0); } else { d.setJoueurCourant(d.getJoueurCourant() + 1); } } }