ajout de commentaires et TODO
This commit is contained in:
		@@ -27,7 +27,7 @@ public class GameView extends View {
 | 
			
		||||
        this.setOnTouchListener(new TouchListener(this));
 | 
			
		||||
        //on initialise les collections de pions
 | 
			
		||||
        initpions();
 | 
			
		||||
        //state indique si le joueur soumet une combinaison ou false si elle est noté
 | 
			
		||||
        //state indique true si le joueur soumet une combinaison ou false si elle est noté
 | 
			
		||||
        this.state=true;
 | 
			
		||||
        this.circle = new Paint();
 | 
			
		||||
    }
 | 
			
		||||
@@ -37,6 +37,7 @@ public class GameView extends View {
 | 
			
		||||
        super.onDraw(canvas);
 | 
			
		||||
        this.setBackgroundColor(this.getResources().getColor(R.color.grey));
 | 
			
		||||
        //affichage des anciennes soumissions
 | 
			
		||||
        //copie des soumissions
 | 
			
		||||
        LinkedList<Integer> grille = new LinkedList<Integer>();
 | 
			
		||||
        grille.addAll(this.grille.getSoumissions());
 | 
			
		||||
        System.out.println(grille.size());
 | 
			
		||||
@@ -48,6 +49,7 @@ public class GameView extends View {
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        // affichage de la zone de saisie
 | 
			
		||||
        //copie de la zone de saisie
 | 
			
		||||
        LinkedList<Integer> saisie = new LinkedList<Integer>();
 | 
			
		||||
        saisie.addAll(this.saisie.getSelection());
 | 
			
		||||
        for (int i=0;i<this.saisie.getSelection().size();i++){
 | 
			
		||||
@@ -57,6 +59,7 @@ public class GameView extends View {
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // affichage des couleurs choisissables
 | 
			
		||||
        //copie des couleurs dispos
 | 
			
		||||
        LinkedList<Integer> couleurs = new LinkedList<Integer>();
 | 
			
		||||
        couleurs.addAll(this.saisie.getChoix());
 | 
			
		||||
        System.out.println(couleurs.size());
 | 
			
		||||
@@ -65,13 +68,17 @@ public class GameView extends View {
 | 
			
		||||
            //TODO: coordonnées propres (encore)
 | 
			
		||||
            canvas.drawCircle((i*this.getWidth()*2/13+this.getWidth()/8),this.getWidth()*689/420, this.getWidth()/15, this.circle);
 | 
			
		||||
        }
 | 
			
		||||
        //Test pour valider
 | 
			
		||||
        //TODO: ajout des colonnes de notation
 | 
			
		||||
        //TODO: ajout des boutons
 | 
			
		||||
        //Test de bouton valider
 | 
			
		||||
        this.circle.setColor(this.getResources().getColor(R.color.green));
 | 
			
		||||
        canvas.drawCircle((this.getWidth()/2),this.getHeight()-this.getWidth()/9, this.getWidth()/10, this.circle);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    //Change l'état de soumission à notation après qu'une combinaision ai été soumise puis inversement
 | 
			
		||||
    public void changeState() {
 | 
			
		||||
        if (this.saisie.getSizeSelection() == 4) {
 | 
			
		||||
            //partie à décommenter pour acceder à la notation
 | 
			
		||||
            /*this.state = !this.state;
 | 
			
		||||
            if (this.state) {
 | 
			
		||||
                this.saisie.setChoix(this.pionsAttaquant);
 | 
			
		||||
@@ -84,23 +91,26 @@ public class GameView extends View {
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    //Soumet une nouvelle couleur pour la séléction à soumettre
 | 
			
		||||
    //ajoute une nouvelle couleur pour la séléction à soumettre
 | 
			
		||||
    public void addChoix(int choix){
 | 
			
		||||
        this.saisie.addSelection(choix);
 | 
			
		||||
        this.invalidate();
 | 
			
		||||
    }
 | 
			
		||||
    //initialise les collections de pions
 | 
			
		||||
    //initialise les collections de pions et remplie saisie et grille de pions vides
 | 
			
		||||
    public void initpions(){
 | 
			
		||||
        //on initialise les pions
 | 
			
		||||
        //on créer une ligne de 4 pions gris représentants une ligne de pions vides
 | 
			
		||||
        this.pionsPasPlaces = new LinkedList<Integer>();
 | 
			
		||||
        for (int i=0;i<4;i++){
 | 
			
		||||
            this.pionsPasPlaces.add(this.getResources().getColor(R.color.pionVide));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        //Le défenseur a des pions noirs et blancs
 | 
			
		||||
        this.pionsDefenseur = new LinkedList<Integer>();
 | 
			
		||||
        this.pionsDefenseur.add(this.getResources().getColor(R.color.white));
 | 
			
		||||
        this.pionsDefenseur.add(this.getResources().getColor(R.color.black));
 | 
			
		||||
 | 
			
		||||
        //L'attaquant a des pions de couleurs
 | 
			
		||||
        this.pionsAttaquant = new LinkedList<Integer>();
 | 
			
		||||
        this.pionsAttaquant.add(this.getResources().getColor(R.color.pink));
 | 
			
		||||
        this.pionsAttaquant.add(this.getResources().getColor(R.color.purple));
 | 
			
		||||
 
 | 
			
		||||
@@ -10,36 +10,54 @@ import java.util.LinkedList;
 | 
			
		||||
représente la grille de jeu à savoir la liste des soumissions ainsi que leur notation
 | 
			
		||||
 */
 | 
			
		||||
public class Grille {
 | 
			
		||||
    //sizeSubs indique le nombre de soumissions dans la grille. Il permet de limiter ce nombre à 10
 | 
			
		||||
    private int sizeSubs;
 | 
			
		||||
    // soumission représente la liste des soumissions réalisées ainsi que des cases grises pour compléter la grille
 | 
			
		||||
    private LinkedList<Integer> soumissions;
 | 
			
		||||
    // notations est la liste des notes attribuées aux soumissions
 | 
			
		||||
    private LinkedList<Integer> notations;
 | 
			
		||||
 | 
			
		||||
    public Grille(){
 | 
			
		||||
        this.soumissions=new LinkedList<Integer>();
 | 
			
		||||
        this.notations=new LinkedList<Integer>();
 | 
			
		||||
        this.sizeSubs=0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Méthode permettant d'ajouter une soumission
 | 
			
		||||
    public void addSoumission(LinkedList<Integer> newSub){
 | 
			
		||||
        //le nombre de soumissions ne doit pas dépasser 10
 | 
			
		||||
        if (this.sizeSubs<10) {
 | 
			
		||||
            for (int i = 4; i > 0; i--) {
 | 
			
		||||
            for (int i=0; i<4; i++) {
 | 
			
		||||
                //On retire une ligne vide en haut pour remonter l'affichage
 | 
			
		||||
                this.soumissions.remove(0);
 | 
			
		||||
                //On ajoute ensuite une deriere ligne qui correspond à la nouvelle soumission
 | 
			
		||||
                this.soumissions.addLast(newSub.poll());
 | 
			
		||||
            }
 | 
			
		||||
            this.sizeSubs += 1;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Méthode qui permet d'initialiser la grille vide
 | 
			
		||||
    public void initGrille(Collection<Integer> SubToCopy){
 | 
			
		||||
        //On réécupère une ligne de la couleur qui correspond à l'absence de pion et on remplit la grille avec (soumissions et notations
 | 
			
		||||
        for(int i=0;i<10;i++){
 | 
			
		||||
            this.soumissions.addAll(SubToCopy);
 | 
			
		||||
            this.notations.addAll(SubToCopy);
 | 
			
		||||
        }
 | 
			
		||||
        // Au début il n'y a pas de soumission
 | 
			
		||||
        this.sizeSubs=0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Méthode qui permet d'ajouter des notations comme pour les soumissions
 | 
			
		||||
    public void addNotation(LinkedList<Integer> newNot){
 | 
			
		||||
        for (int i=0; i<4; i++) {
 | 
			
		||||
            //On retire une ligne vide en haut pour remonter l'affichage
 | 
			
		||||
            this.notations.remove(0);
 | 
			
		||||
            //On ajoute ensuite une deriere ligne qui correspond à la nouvelle soumission
 | 
			
		||||
            this.notations.addLast(newNot.poll());
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void addNotation(Collection<Integer> newNot){
 | 
			
		||||
        this.notations.addAll(newNot);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    //getters des soumissions et notations
 | 
			
		||||
    public Collection<Integer> getSoumissions(){
 | 
			
		||||
        return this.soumissions;
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -13,8 +13,12 @@ import java.util.LinkedList;
 | 
			
		||||
 */
 | 
			
		||||
public class Saisie {
 | 
			
		||||
 | 
			
		||||
    //sizeSelection est le nombre de pions dans la zone actuelle de saisie.
 | 
			
		||||
    // Cela permet de limiter ce nombre à 4 et vérfier qu'il y en a 4 avant de soumettre
 | 
			
		||||
    private int sizeSelection;
 | 
			
		||||
    //choix est la liste des couleurs que l'on peut choisir (N&B pour la notation et couleuts pour les soumissions)
 | 
			
		||||
    private LinkedList<Integer> choix;
 | 
			
		||||
    //selection est la liste des pions choisis pour une soumission ou une notation
 | 
			
		||||
    private LinkedList<Integer> selection;
 | 
			
		||||
    public Saisie(){
 | 
			
		||||
        this.choix=new LinkedList<Integer>();
 | 
			
		||||
@@ -23,15 +27,19 @@ public class Saisie {
 | 
			
		||||
 | 
			
		||||
    // getters et setters
 | 
			
		||||
 | 
			
		||||
    //récupère la couleur d'un pion vide pour remplir la zone de saisie avec
 | 
			
		||||
    public void initSelection(Integer chosenColors){
 | 
			
		||||
        this.selection.removeAll(this.selection);
 | 
			
		||||
        for (int i=0;i<4;i++){
 | 
			
		||||
            this.selection.add(chosenColors);
 | 
			
		||||
        }
 | 
			
		||||
        //au début la zone de séléction est vide
 | 
			
		||||
        this.sizeSelection=0;
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
    //addSelection permet d'ajouter un pion à la zone de saisie
 | 
			
		||||
    public void addSelection(Integer chosenColors){
 | 
			
		||||
        //On vérifie qu'il n'y a pas déjà 4 pions
 | 
			
		||||
        if (this.sizeSelection<4){
 | 
			
		||||
            this.selection.set(this.sizeSelection,this.choix.get(chosenColors));
 | 
			
		||||
            this.sizeSelection+=1;
 | 
			
		||||
@@ -47,6 +55,7 @@ public class Saisie {
 | 
			
		||||
        return this.choix;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    //Méthode qui permet depuis GameView de changer la liste des choix de couleur en fonction de l'état de la partie
 | 
			
		||||
    public void setChoix(Collection<Integer> colorsSelected){
 | 
			
		||||
        this.choix.removeAll(this.choix);
 | 
			
		||||
        this.choix.addAll(colorsSelected);
 | 
			
		||||
 
 | 
			
		||||
@@ -16,6 +16,7 @@ public class TouchListener implements View.OnTouchListener{
 | 
			
		||||
 | 
			
		||||
        if (action==MotionEvent.ACTION_UP)
 | 
			
		||||
        {
 | 
			
		||||
            //Surveille quel bouton de couleur est choisi
 | 
			
		||||
            if (v.getWidth()*689/420-v.getWidth()/15<y && y<v.getWidth()*689/420+v.getWidth()/15){
 | 
			
		||||
                if(v.getWidth()/8-v.getWidth()/15<x && x<v.getWidth()/8+v.getWidth()/15){
 | 
			
		||||
                    this.view.addChoix(0);
 | 
			
		||||
@@ -30,6 +31,7 @@ public class TouchListener implements View.OnTouchListener{
 | 
			
		||||
                } else if(5*v.getWidth()*2/13+v.getWidth()/8-v.getWidth()/15<x && x<5*v.getWidth()*2/13+v.getWidth()/8+v.getWidth()/15){
 | 
			
		||||
                    this.view.addChoix(5);
 | 
			
		||||
                }
 | 
			
		||||
            // surveille si un bouton de controlle est cliqué (ici seule la soumission est gérée)
 | 
			
		||||
            } else if (v.getHeight()-v.getWidth()/9-v.getWidth()/10<y && y<v.getHeight()-v.getWidth()/9+v.getWidth()/10){
 | 
			
		||||
                this.view.changeState();
 | 
			
		||||
            }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user