
public class ExempleJeu{

    static PaquetDeCartes leJeu;

    static JoueurProgramme JJ;

    static PaquetDeCartes p1  = new PaquetDeCartes();
    static PaquetDeCartes p2 = new PaquetDeCartes();

    static Graphique fenetre;

    // ===============================================================	
    public static void main(String[] args){

	
	Terminal.ecrireString("Debut de l'exemple : ");
	// on recupere un jeu de 32 cartes battu
	leJeu = Arbitre.donneJeuBeloteBattu();
	
	// on cree une fenetre
	Terminal.ecrireString("Creation d'une fenetre");
	fenetre = new Graphique();

	// on prend les 16 premiere cartes et on les met dans p1
	// et dans p2 en alternance

	for (int i=0; i<6; i++){
	    p1.ajoute (leJeu.prendIeme (0));
	    p2.ajoute (leJeu.prendIeme (0));
	}

	// on prend la seconde carte du paquet leJeu
	Carte c = leJeu.prendIeme (1);

	// on affiche le paquet p1 comme s'il s'agissait du paquet
	// de cartes de l'utilisateur lors du premier tour
	fenetre.affiche1(p1, c);
		
	// on propose a l'utilisateur de choisir une carte
	Terminal.ecrireString("Quelle carte jouez vous : ");
	int v = Terminal.lireInt();

	// on la "pose" graphiquement sur le tapis
	Carte carteJouee = p1.prendIeme(v-1);
	fenetre.joueurHumainJoue(p1,carteJouee); 
	
	// on prend une carte du second paquet
	carteJouee = p2.prendIeme (3);

	// on affiche la valeur de la carte
	Terminal.ecrireString
	    ("valeur carte jouee =  " + Arbitre.pointsCarte(carteJouee,Couleur.Coeur));

	// on la pose sur le tapis pour le joueur 2
	fenetre.ordinateurJoue(carteJouee, 2);

	Terminal.ecrireString ("Tapez un retour chariot pour continuer");
	String pause = Terminal.lireString();

	// on efface le tapis
	fenetre.effaceTapis();

	Terminal.ecrireString ("Tapez un retour chariot pour continuer");
	pause = Terminal.lireString();

	// on affiche un message de victoire (100 est plus grand que 62)
	fenetre.perduGagne(100, 62);

	Terminal.ecrireString 
	    ("Ciquez sur la croix de la fenetre graphique pour la fermer");

	for (int i=0; i<20; i++){
	    Terminal.ecrireStringln("val = " + Math.round( Math.random()*10) );
	}
    }
}
