/**
*Programme cree par The Clusters
*Interface du joueur automatique du jeu "Chkoba"
*Toutes les interfaces pour le reseau
*doivent heriter de Remote
*@author The Clusters
*@version 1.0
**/

package chkoba;
import chkoba.*;
import java.rmi.*;
import java.util.*;

/**
*	Interface Joueur Automatique
**/
public interface IJoueurA extends Remote
{
	/**
	* METHODES
	**/
	
	public void jouer(IPlateau plateau) throws RemoteException;
	void chkoba() throws RemoteException;
	public void majPrio() throws RemoteException;
	public boolean carteRamassableAvec(IPlateau plateau, int carteMain, int carteTapis)throws RemoteException;
	public ArrayList<ICarte> peuRamasserCarreau(IPlateau plateau, int carteMain, int carteTapis)throws RemoteException;
	public void ramasse(IPlateau plateau,int carteTapis, int carteMain) throws RemoteException;
	public void ramasse(IPlateau plateau,int carteTapis, int carteMain, ArrayList<ICarte> ramassage)throws RemoteException;
	public ArrayList<ICarte> peuRamasserSept(IPlateau plateau,ICarte carte)throws RemoteException;
	public String affiche()throws RemoteException;
	public int coupsPossibles( IPlateau plateau ) throws RemoteException;
	boolean deuxCartes (ICarte c, IPlateau plateau) throws RemoteException;
	boolean troisCartes(ICarte c, IPlateau plateau) throws RemoteException;
	boolean quatreCartes(ICarte c, IPlateau plateau) throws RemoteException;
	boolean cinqCartes(ICarte c, IPlateau plateau) throws RemoteException;
	boolean sixCartes(ICarte c, IPlateau plateau) throws RemoteException;
	



	/**
	* ACCESSEURS
	**/
	
	boolean mainEstVide() throws RemoteException;
	void setVide(boolean b) throws RemoteException;
	IMain getMain() throws RemoteException;
	String getNom() throws RemoteException;
	void setNom(String s) throws RemoteException;
	public void poser(ICarte c, IPlateau plateau) throws RemoteException;
	
	/**
	* AFFICHAGE
	**/
}