From 54aa3309d9965d9ef5d99fd3257ccfbb78c5e2ad Mon Sep 17 00:00:00 2001 From: Bilou Date: Fri, 31 Mar 2023 16:15:21 +0200 Subject: [PATCH] $ --- .../jmastermind/Deck/Deck (copy 1).java | 19 -- .../jmastermind/Deck/DeckCheck (copy 1).java | 109 ----------- .../jmastermind/Deck/DeckLambda (copy 1).java | 75 -------- .../jmastermind/Deck/DeckWinner (copy 1).java | 76 -------- .../Events/ColorSelectorEvent (copy 1).java | 175 ------------------ .../Events/ControlEvent (copy 1).java | 38 ---- .../Events/MenuEvent (copy 1).java | 26 --- .../Events/PopupEvent (copy 1).java | 44 ----- .../jmastermind/Game/Controller (copy 1).java | 63 ------- .../jmastermind/Game/Model (copy 1).java | 139 -------------- .../jmastermind/Game/MultiGame (copy 1).java | 4 - .../jmastermind/Game/Popup (copy 1).java | 30 --- .../jmastermind/Game/SoloGame (copy 1).java | 21 --- .../jmastermind/Game/Vuew (copy 1).java | 86 --------- .../Geometrics/Circle (copy 1).java | 55 ------ .../jmastermind/MainActivity (copy 1).java | 22 --- 16 files changed, 982 deletions(-) delete mode 100644 app/src/main/java/com/example/jmastermind/Deck/Deck (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Deck/DeckCheck (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Deck/DeckLambda (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Deck/DeckWinner (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Events/ColorSelectorEvent (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Events/ControlEvent (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Events/MenuEvent (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Events/PopupEvent (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Game/Controller (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Game/Model (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Game/MultiGame (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Game/Popup (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Game/SoloGame (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Game/Vuew (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/Geometrics/Circle (copy 1).java delete mode 100644 app/src/main/java/com/example/jmastermind/MainActivity (copy 1).java diff --git a/app/src/main/java/com/example/jmastermind/Deck/Deck (copy 1).java b/app/src/main/java/com/example/jmastermind/Deck/Deck (copy 1).java deleted file mode 100644 index 4c93001..0000000 --- a/app/src/main/java/com/example/jmastermind/Deck/Deck (copy 1).java +++ /dev/null @@ -1,19 +0,0 @@ -package com.example.jmastermind.Deck; - -import android.graphics.Color; - -import java.util.List; - -public interface Deck { - /** - * Recuperer la combinaison stockés dans la class - * @return La combinaison du deck - * */ - public abstract List getDeck(); - - /** - * Retourne la combinaison sous forme de chaine de caractere - * @return Une facon personnaliser d'afficher la combinaison (debug) - * */ - public abstract String displayComb(); -} diff --git a/app/src/main/java/com/example/jmastermind/Deck/DeckCheck (copy 1).java b/app/src/main/java/com/example/jmastermind/Deck/DeckCheck (copy 1).java deleted file mode 100644 index c783dc5..0000000 --- a/app/src/main/java/com/example/jmastermind/Deck/DeckCheck (copy 1).java +++ /dev/null @@ -1,109 +0,0 @@ -package com.example.jmastermind.Deck; - -import android.graphics.Color; - -import java.util.LinkedList; -import java.util.List; -import java.util.Objects; - -public class DeckCheck implements Deck { - private List deck; - private Deck lambda; - private Deck winner; - - /** - * Permet de comparer une combinaison attaquante avec une combinaison gagnante - * @param lambda La combinaison attaquante - * @param winner La combinaison gagnante - * */ - public DeckCheck(Deck lambda, Deck winner) { - this.deck = new LinkedList<>(); - this.lambda = lambda; - this.winner = winner; - } - - /** - * Lancement de la verification - * @return Le deck comprenant les pions de verification Noir et Blanc - * */ - public Deck doCheck() { - this.deck = new LinkedList<>(); - List winner = this.winner.getDeck(); - List lambda = this.lambda.getDeck(); - - for(int i = 0; i <= winner.size()-1; i++) { - Integer win = winner.get(i); - Integer lam = lambda.get(i); - - if(Objects.equals(win, lam)) { - this.deck.add(Color.BLACK); - } else { - if(winner.contains(lam)) { - this.deck.add(Color.WHITE); - } else { - this.deck.add(Color.GRAY); - } - } - } - - Deck check = new DeckLambda( - this.deck.get(0), - this.deck.get(1), - this.deck.get(2), - this.deck.get(3) - ); - - return check; - } - - @Override - public List getDeck() { - return this.deck; - } - - @Override - public String displayComb() { - StringBuilder sb = new StringBuilder(); - - for(int i = 0; i <= this.deck.size()-1; i++) { - switch(this.deck.get(i)) { - case Color.BLACK: { - sb.append("Noir").append(", "); - break; - } - - case Color.WHITE: { - sb.append("Blanc").append(", "); - break; - } - - case Color.GRAY: { - sb.append("Gris").append(", "); - break; - } - - case Color.GREEN: { - sb.append("Vert").append(", "); - break; - } - - case Color.RED: { - sb.append("Rouge").append(", "); - break; - } - - case Color.YELLOW: { - sb.append("Jaune").append(", "); - break; - } - - case Color.BLUE: { - sb.append("Bleu").append(", "); - break; - } - } - } - - return sb.toString(); - } -} diff --git a/app/src/main/java/com/example/jmastermind/Deck/DeckLambda (copy 1).java b/app/src/main/java/com/example/jmastermind/Deck/DeckLambda (copy 1).java deleted file mode 100644 index 2e67b7a..0000000 --- a/app/src/main/java/com/example/jmastermind/Deck/DeckLambda (copy 1).java +++ /dev/null @@ -1,75 +0,0 @@ -package com.example.jmastermind.Deck; - -import android.graphics.Color; -import java.util.LinkedList; -import java.util.List; - -public class DeckLambda implements Deck{ - List deck; - - /** - * Composition de la combinaison attaquante - * @param c1 Couleur en int du Pion n1 - * @param c2 Couleur en int du Pion n2 - * @param c3 Couleur en int du Pion n3 - * @param c4 Couleur en int du Pion n4 - * */ - public DeckLambda(Integer c1, Integer c2, Integer c3, Integer c4) { - this.deck = new LinkedList<>(); - this.deck.add(c1); - this.deck.add(c2); - this.deck.add(c3); - this.deck.add(c4); - } - - @Override - public List getDeck() { - return this.deck; - } - - @Override - public String displayComb() { - StringBuilder sb = new StringBuilder(); - - for(int i = 0; i <= this.deck.size()-1; i++) { - switch(this.deck.get(i)) { - case Color.BLACK: { - sb.append("Noir").append(", "); - break; - } - - case Color.WHITE: { - sb.append("Blanc").append(", "); - break; - } - - case Color.GREEN: { - sb.append("Vert").append(", "); - break; - } - - case Color.RED: { - sb.append("Rouge").append(", "); - break; - } - - case Color.YELLOW: { - sb.append("Jaune").append(", "); - break; - } - - case Color.BLUE: { - sb.append("Bleu").append(", "); - break; - } - - case Color.GRAY: { - sb.append("Gris").append(", "); - break; - } - } - } - - return sb.toString(); - } -} diff --git a/app/src/main/java/com/example/jmastermind/Deck/DeckWinner (copy 1).java b/app/src/main/java/com/example/jmastermind/Deck/DeckWinner (copy 1).java deleted file mode 100644 index c066104..0000000 --- a/app/src/main/java/com/example/jmastermind/Deck/DeckWinner (copy 1).java +++ /dev/null @@ -1,76 +0,0 @@ -package com.example.jmastermind.Deck; - -import android.graphics.Color; - -import java.util.LinkedList; -import java.util.List; - -public class DeckWinner implements Deck{ - List deck; - - /** - * Composition de la combinaison gagante - * @param c1 Couleur en int du Pion n1 - * @param c2 Couleur en int du Pion n2 - * @param c3 Couleur en int du Pion n3 - * @param c4 Couleur en int du Pion n4 - * */ - public DeckWinner(Integer c1, Integer c2, Integer c3, Integer c4) { - this.deck = new LinkedList<>(); - this.deck.add(c1); - this.deck.add(c2); - this.deck.add(c3); - this.deck.add(c4); - } - - @Override - public List getDeck() { - return this.deck; - } - - @Override - public String displayComb() { - StringBuilder sb = new StringBuilder(); - - for(int i = 0; i <= this.deck.size()-1; i++) { - switch(this.deck.get(i)) { - case Color.BLACK: { - sb.append("Noir").append(", "); - break; - } - - case Color.WHITE: { - sb.append("Blanc").append(", "); - break; - } - - case Color.GREEN: { - sb.append("Vert").append(", "); - break; - } - - case Color.RED: { - sb.append("Rouge").append(", "); - break; - } - - case Color.YELLOW: { - sb.append("Jaune").append(", "); - break; - } - - case Color.BLUE: { - sb.append("Bleu").append(", "); - break; - } - - case Color.GRAY: { - sb.append("Gris").append(", "); - break; - } - } - } - - return sb.toString(); - } -} diff --git a/app/src/main/java/com/example/jmastermind/Events/ColorSelectorEvent (copy 1).java b/app/src/main/java/com/example/jmastermind/Events/ColorSelectorEvent (copy 1).java deleted file mode 100644 index 8aadb43..0000000 --- a/app/src/main/java/com/example/jmastermind/Events/ColorSelectorEvent (copy 1).java +++ /dev/null @@ -1,175 +0,0 @@ -package com.example.jmastermind.Events; - -import android.graphics.Color; -import android.view.View; -import android.widget.TextView; - -import androidx.appcompat.app.AppCompatActivity; - -import com.example.jmastermind.Deck.Deck; -import com.example.jmastermind.Deck.DeckCheck; -import com.example.jmastermind.Deck.DeckLambda; -import com.example.jmastermind.Game.Popup; -import com.example.jmastermind.Geometrics.Circle; -import com.example.jmastermind.R; - -import org.w3c.dom.Text; - -import java.util.LinkedList; -import java.util.List; - -public class ColorSelectorEvent extends View implements View.OnClickListener { - private AppCompatActivity context; - /** - * [0] = x - * [1] = y - * */ - private int[] coords; - private Deck winner; - private int tentative; - - /** - * Evenement declanché lorsque le joueur selectionne une couleur - * @param context Le contexte de l'app - * @param winner La combinaison gagnante - * */ - public ColorSelectorEvent(AppCompatActivity context, Deck winner) { - super(context); - this.context = context; - this.winner = winner; - this.coords = new int[]{1, 1}; - this.tentative = 10; - } - - /** - * Relier indirectement au bouton "Valider" - * Changer de ligne et lancer la verification des combinaisons - * */ - public void goNext() { - List listOfColors = new LinkedList<>(); - - for(int i = 1; i <= 4; i++) { - int id = this.context.getResources() - .getIdentifier("normalCircle" + this.coords[0] + i, "id", this.context.getPackageName()); - Circle c = this.context.findViewById(id); - - listOfColors.add(c.getColor()); - } - - Deck lambda = new DeckLambda( - listOfColors.get(0), - listOfColors.get(1), - listOfColors.get(2), - listOfColors.get(3) - ); - - DeckCheck checker = new DeckCheck(lambda, this.winner); - Deck checkerPions = checker.doCheck(); - List checkColors = checkerPions.getDeck(); - int countOfBlack = 0; - - for(int i = 1; i <= 4; i++) { - int id = this.context.getResources() - .getIdentifier("checkCircle" + this.coords[0] + i, "id", this.context.getPackageName()); - Circle c = this.context.findViewById(id); - - c.setColor(checkColors.get(i-1)); - - if(checkColors.get(i-1) == Color.BLACK) { - countOfBlack++; - } - } - - if(countOfBlack == 4) { - String[] opts = new String[] { - "Rejouer", - "Voir votre jeu", - "Retourner au menu" - }; - - Popup popup = new Popup(this.context, opts, true, (10 - this.tentative + 1)); - popup.show(); - } - - this.tentative--; - - TextView tx = (TextView) this.context.findViewById(R.id.counter); - tx.setText("Tentative rest. \n" + this.tentative); - tx.invalidate(); - - this.coords[1] = 1; - this.coords[0]++; - } - - /** - * Relier indirectement au bouton "Effacer" - * Permet d'effacer la combinaison non validé par le joueur - * */ - public void resetCombi() { - for(int i = 1; i <= this.coords[1]; i++) { - int id = this.context.getResources() - .getIdentifier("normalCircle" + this.coords[0] + i, "id", this.context.getPackageName()); - Circle c = this.context.findViewById(id); - - c.setColor(Color.GRAY); - } - - this.coords[1] = 1; - } - - @Override - public void onClick(View view) { - int idOfClickedColor = view.getId(); - Circle circleClicked = (Circle) this.context.findViewById(idOfClickedColor); - int colorChoosed = circleClicked.getColor(); - - int id = this.context.getResources() - .getIdentifier("normalCircle" + this.coords[0] + this.coords[1], "id", this.context.getPackageName()); - Circle c = this.context.findViewById(id); - - switch(colorChoosed) { - case Color.RED: { - c.setColor(Color.RED); - break; - } - - case Color.GREEN: { - c.setColor(Color.GREEN); - break; - } - - case Color.BLUE: { - c.setColor(Color.BLUE); - break; - } - - case Color.YELLOW: { - c.setColor(Color.YELLOW); - break; - } - - case Color.BLACK: { - c.setColor(Color.BLACK); - break; - } - - case Color.WHITE: { - c.setColor(Color.WHITE); - break; - } - - case Color.GRAY: { - c.setColor(Color.GRAY); - break; - } - - default: { - break; - } - } - - if(this.coords[1] < 4) { - this.coords[1]++; - } - } -} \ No newline at end of file diff --git a/app/src/main/java/com/example/jmastermind/Events/ControlEvent (copy 1).java b/app/src/main/java/com/example/jmastermind/Events/ControlEvent (copy 1).java deleted file mode 100644 index 0239b11..0000000 --- a/app/src/main/java/com/example/jmastermind/Events/ControlEvent (copy 1).java +++ /dev/null @@ -1,38 +0,0 @@ -package com.example.jmastermind.Events; - -import android.content.Context; -import android.view.View; -import android.widget.Button; - -import androidx.appcompat.app.AppCompatActivity; - -import com.example.jmastermind.Game.Controller; - -public class ControlEvent extends View implements View.OnClickListener { - private final AppCompatActivity context; - private Controller controller; - - /** - * Event relier aux boutons "Valider" et "Effacer" - * @param context Le context - * @param controller Le controller du jeu - * */ - public ControlEvent(AppCompatActivity context, Controller controller) { - super(context); - this.context = context; - this.controller = controller; - } - - @Override - public void onClick(View view) { - int idOfButton = view.getId(); - Button btnClicked = (Button) this.context.findViewById(idOfButton); - CharSequence text = btnClicked.getText(); - - if ("Valider".equals(text)) { - this.controller.viewValidate(); - } else if ("Effacer".equals(text)) { - this.controller.viewReset(); - } - } -} diff --git a/app/src/main/java/com/example/jmastermind/Events/MenuEvent (copy 1).java b/app/src/main/java/com/example/jmastermind/Events/MenuEvent (copy 1).java deleted file mode 100644 index 84c79af..0000000 --- a/app/src/main/java/com/example/jmastermind/Events/MenuEvent (copy 1).java +++ /dev/null @@ -1,26 +0,0 @@ -package com.example.jmastermind.Events; - -import android.content.Intent; -import android.view.View; -import androidx.appcompat.app.AppCompatActivity; - -public class MenuEvent implements View.OnClickListener { - private Class option; - private AppCompatActivity ac; - - /** - * Event lié au menu de depart - * @param ac Le contexte - * @param option La class de l'activité a demarrer - * */ - public MenuEvent(AppCompatActivity ac, Class option) { - this.ac = ac; - this.option = option; - } - - @Override - public void onClick(View view) { - Intent i = new Intent(this.ac, this.option); - this.ac.startActivity(i); - } -} diff --git a/app/src/main/java/com/example/jmastermind/Events/PopupEvent (copy 1).java b/app/src/main/java/com/example/jmastermind/Events/PopupEvent (copy 1).java deleted file mode 100644 index bb08000..0000000 --- a/app/src/main/java/com/example/jmastermind/Events/PopupEvent (copy 1).java +++ /dev/null @@ -1,44 +0,0 @@ -package com.example.jmastermind.Events; - -import android.content.DialogInterface; -import android.content.Intent; - -import androidx.appcompat.app.AppCompatActivity; - -import com.example.jmastermind.Game.Popup; -import com.example.jmastermind.Game.SoloGame; -import com.example.jmastermind.MainActivity; - -public class PopupEvent implements DialogInterface.OnClickListener { - private AppCompatActivity context; - - /** - * Event lié au popup de fin de partie - * @param context Le context - * */ - public PopupEvent(AppCompatActivity context) { - this.context = context; - } - - @Override - public void onClick(DialogInterface dialogInterface, int i) { - switch(i) { - case 0: { - Intent a = new Intent(this.context, SoloGame.class); - this.context.startActivity(a); - break; - } - - case 1: { - dialogInterface.cancel(); - break; - } - - case 2: { - Intent c = new Intent(this.context, MainActivity.class); - this.context.startActivity(c); - break; - } - } - } -} diff --git a/app/src/main/java/com/example/jmastermind/Game/Controller (copy 1).java b/app/src/main/java/com/example/jmastermind/Game/Controller (copy 1).java deleted file mode 100644 index 509783d..0000000 --- a/app/src/main/java/com/example/jmastermind/Game/Controller (copy 1).java +++ /dev/null @@ -1,63 +0,0 @@ -package com.example.jmastermind.Game; - -import android.graphics.Color; -import androidx.appcompat.app.AppCompatActivity; - -import com.example.jmastermind.Deck.Deck; -import com.example.jmastermind.Deck.DeckWinner; -import com.example.jmastermind.Events.ColorSelectorEvent; -import com.example.jmastermind.Events.ControlEvent; - -import java.util.Random; - -public class Controller { - private Vuew vuew; - private Model model; - private AppCompatActivity context; - private ColorSelectorEvent event; - private ControlEvent controlEvent; - - /** - * Controlleur du jeu - * @param context Le contexte - * @param mode 0 Solo ou 1 multi - * */ - public Controller(AppCompatActivity context, int mode) { - this.context = context; - this.controlEvent = new ControlEvent(this.context, this); - - this.model = new Model(this.context); - this.model.init(); - - if(mode == 0) { - this.model.genWinner(); - Deck winner = this.model.getWinner(); - System.out.println(winner.displayComb()); - this.event = new ColorSelectorEvent(this.context, winner); - } - - this.vuew = new Vuew( - this.context, - this.model.getListOfNormalCircle(), - this.model.getListOfCheckCircle(), - this.event, - this.controlEvent - ); - - this.vuew.init(); - } - - /** - * Quand le joueur appuie sur "valider" - * */ - public void viewValidate() { - this.event.goNext(); - } - - /** - * Quand le joueur appuie sur "effacer" - * */ - public void viewReset() { - this.event.resetCombi(); - } -} diff --git a/app/src/main/java/com/example/jmastermind/Game/Model (copy 1).java b/app/src/main/java/com/example/jmastermind/Game/Model (copy 1).java deleted file mode 100644 index 888c9a3..0000000 --- a/app/src/main/java/com/example/jmastermind/Game/Model (copy 1).java +++ /dev/null @@ -1,139 +0,0 @@ -package com.example.jmastermind.Game; - -import android.graphics.Color; -import android.view.View; -import androidx.appcompat.app.AppCompatActivity; -import com.example.jmastermind.Deck.DeckWinner; -import com.example.jmastermind.Geometrics.Circle; -import java.util.LinkedList; -import java.util.List; -import java.util.Random; - -public class Model extends View { - private List listOfNormalCircle; - private List listOfCheckCircle; - private DeckWinner winner; - private AppCompatActivity context; - - /** - * Le model du jeu - * @param context Le contexte - * */ - public Model(AppCompatActivity context) { - super(context); - this.context = context; - this.listOfNormalCircle = new LinkedList<>(); - this.listOfCheckCircle = new LinkedList<>(); - this.winner = null; - } - - /** - * Genere une combinaison aleatoire - * */ - public void genWinner() { - Integer[] color = new Integer[]{0, 0, 0, 0}; - - for(int i = 0; i <= 3; i++) { - Random rand = new Random(); - int ran = rand.nextInt(6) + 1; - - switch(ran) { - case 1: { - color[i] = Color.RED; - break; - } - - case 2: { - color[i] = Color.YELLOW; - break; - } - - case 3: { - color[i] = Color.BLUE; - break; - } - - case 4: { - color[i] = Color.GREEN; - break; - } - - case 5: { - color[i] = Color.WHITE; - break; - } - - case 6: { - color[i] = Color.BLACK; - break; - } - - case 7: { - color[i] = Color.GRAY; - break; - } - - default: { - break; - } - } - } - - this.winner = new DeckWinner(color[1], color[0], color[2], color[3]); - } - - /** - * Recupere le deck gagant du jeu - * @return DeckWinner Le deck gagant du jeu - * */ - public DeckWinner getWinner() { - return this.winner; - } - - /** - * Demarrage du Model - * @return Si oui ou non ca a fonctionné - * */ - public Boolean init() { - try { - for(int i = 1; i <= 10; i++) { - for(int j = 1; j <= 4; j++) { - int normalId = this.context.getResources(). - getIdentifier("normalCircle" + i + j, "id", this.context.getPackageName()); - Circle normal = this.context.findViewById(normalId); - - int checkId = this.context.getResources() - .getIdentifier("checkCircle" + i + j, "id", this.context.getPackageName()); - Circle check = this.context.findViewById(checkId); - - this.listOfNormalCircle.add(normal); - this.listOfCheckCircle.add(check); - } - } - - return true; - } catch(ArrayIndexOutOfBoundsException e) { - System.out.println("[!] Probleme lors de l'initiliation du model (ArrayIndexOutOfBoundsException)."); - return false; - } catch(NullPointerException e) { - System.out.println("[!] Probleme lors de l'initiliation du model (NullPointerException)."); - return false; - } - } - - /** - * Recuperation des cercles normaux du jeu (id="normalCircleXY" du xml) - * @return La liste des references vers les cercles normaux - * */ - public List getListOfNormalCircle() { - return this.listOfNormalCircle; - } - - /** - * Recuperation des clercles de verification du jeu (noir et blanc) (id="checkCircleXY" du xml) - * @return La liste des references vers les cercles de verification - * */ - public List getListOfCheckCircle() { - return this.listOfCheckCircle; - } -} diff --git a/app/src/main/java/com/example/jmastermind/Game/MultiGame (copy 1).java b/app/src/main/java/com/example/jmastermind/Game/MultiGame (copy 1).java deleted file mode 100644 index a35374d..0000000 --- a/app/src/main/java/com/example/jmastermind/Game/MultiGame (copy 1).java +++ /dev/null @@ -1,4 +0,0 @@ -package com.example.jmastermind.Game; - -public class MultiGame { -} diff --git a/app/src/main/java/com/example/jmastermind/Game/Popup (copy 1).java b/app/src/main/java/com/example/jmastermind/Game/Popup (copy 1).java deleted file mode 100644 index af80e4d..0000000 --- a/app/src/main/java/com/example/jmastermind/Game/Popup (copy 1).java +++ /dev/null @@ -1,30 +0,0 @@ -package com.example.jmastermind.Game; - -import androidx.appcompat.app.AlertDialog; -import androidx.appcompat.app.AppCompatActivity; -import com.example.jmastermind.Events.PopupEvent; - -public class Popup extends AlertDialog.Builder { - private AppCompatActivity context; - - /** - * Affiche la popup de fin de jeu - * @param context Le context - * @param options La liste des options (rejouer, ...) - * @param isWinner Esceque le joueur a gagner la partie - * @param tentative Le nombre de tentatives - * */ - public Popup(AppCompatActivity context, String[] options, Boolean isWinner, int tentative) { - super(context); - - this.context = context; - - if(isWinner) { - this.setTitle("Félicitation ! Vous avez gagner en : " + tentative + " coup(s)."); - } else { - this.setTitle("Perdu !"); - } - - this.setItems(options, new PopupEvent(this.context)); - } -} diff --git a/app/src/main/java/com/example/jmastermind/Game/SoloGame (copy 1).java b/app/src/main/java/com/example/jmastermind/Game/SoloGame (copy 1).java deleted file mode 100644 index c07a4c1..0000000 --- a/app/src/main/java/com/example/jmastermind/Game/SoloGame (copy 1).java +++ /dev/null @@ -1,21 +0,0 @@ -package com.example.jmastermind.Game; - -import android.os.Bundle; - -import androidx.annotation.Nullable; -import androidx.appcompat.app.AppCompatActivity; -import com.example.jmastermind.R; - -public class SoloGame extends AppCompatActivity { - - /** - * Le jeu mode SOLO - * */ - @Override - protected void onCreate(@Nullable Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.game); - - Controller controller = new Controller(this, 0); - } -} diff --git a/app/src/main/java/com/example/jmastermind/Game/Vuew (copy 1).java b/app/src/main/java/com/example/jmastermind/Game/Vuew (copy 1).java deleted file mode 100644 index f56ca9d..0000000 --- a/app/src/main/java/com/example/jmastermind/Game/Vuew (copy 1).java +++ /dev/null @@ -1,86 +0,0 @@ -package com.example.jmastermind.Game; - -import android.graphics.Color; -import android.widget.Button; - -import androidx.appcompat.app.AppCompatActivity; - -import com.example.jmastermind.Events.ColorSelectorEvent; -import com.example.jmastermind.Events.ControlEvent; -import com.example.jmastermind.Geometrics.Circle; -import com.example.jmastermind.R; - -import java.util.List; - -public class Vuew { - private ColorSelectorEvent event; - private List normalCircle; - private List checkedCircle; - private AppCompatActivity context; - private ControlEvent controlEvent; - - /** - * La vue du jeu - * @param context Le context - * @param normalCircle Les references vers les cercles normaux - * @param checkCircle Les references vers les cercles de verification - * @param event L'event de la selection de couleur - * @param controlEvent L'event vers les deux boutons Valider et Effacer - * */ - public Vuew(AppCompatActivity context, List normalCircle, List checkCircle, ColorSelectorEvent event, ControlEvent controlEvent) { - this.context = context; - this.normalCircle = normalCircle; - this.checkedCircle = checkCircle; - this.event = event; - this.controlEvent = controlEvent; - } - - /** - * Parametrage du plateau de jeu - * */ - public Boolean init() { - try { - Circle yellow = (Circle) this.context.findViewById(R.id.yellow); - yellow.setColor(Color.YELLOW); - yellow.setOnClickListener(this.event); - - Circle red = (Circle) this.context.findViewById(R.id.red); - red.setColor(Color.RED); - red.setOnClickListener(this.event); - - Circle green = (Circle) this.context.findViewById(R.id.green); - green.setColor(Color.GREEN); - green.setOnClickListener(this.event); - - Circle blue = (Circle) this.context.findViewById(R.id.blue); - blue.setColor(Color.BLUE); - blue.setOnClickListener(this.event); - - Circle gray = (Circle) this.context.findViewById(R.id.gray); - gray.setColor(Color.GRAY); - gray.setOnClickListener(this.event); - - Circle white = (Circle) this.context.findViewById(R.id.white); - white.setColor(Color.WHITE); - white.setOnClickListener(this.event); - - Circle black = (Circle) this.context.findViewById(R.id.black); - black.setColor(Color.BLACK); - black.setOnClickListener(this.event); - - Button validate = (Button) this.context.findViewById(R.id.validate); - validate.setOnClickListener(this.controlEvent); - - Button reset = (Button) this.context.findViewById(R.id.reset); - reset.setOnClickListener(this.controlEvent); - - return true; - } catch(NullPointerException e) { - System.out.println("[!] Probleme lors de l'initiliation de la vue (NullPointerException)."); - return false; - } catch(ArrayIndexOutOfBoundsException e) { - System.out.println("[!] Probleme lors de l'initiliation de la vue (ArrayIndexOutOfBoundsException)."); - return false; - } - } -} diff --git a/app/src/main/java/com/example/jmastermind/Geometrics/Circle (copy 1).java b/app/src/main/java/com/example/jmastermind/Geometrics/Circle (copy 1).java deleted file mode 100644 index 2c9e4e1..0000000 --- a/app/src/main/java/com/example/jmastermind/Geometrics/Circle (copy 1).java +++ /dev/null @@ -1,55 +0,0 @@ -package com.example.jmastermind.Geometrics; - -import android.content.Context; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; -import android.util.AttributeSet; -import android.view.View; - -import androidx.annotation.Nullable; - -public class Circle extends View { - private Paint picasso; - private int color; - - /** - * Les cercles du jeu "programmiser" en Java - * @param context Le context - * @param attrs Les attributs (notamment id) - * */ - public Circle(Context context, @Nullable AttributeSet attrs) { - super(context, attrs); - this.color = Color.GRAY; - this.picasso = new Paint(); - } - - /** - * Recuperer la couleur du cercle - * @return La couleur du cercle en int - * */ - public int getColor() { - return this.color; - } - - /** - * Changer la couleur d'un cercle - * @param c La nouvelle couleur - * */ - public void setColor(int c) { - this.color = c; - this.invalidate(); - } - - @Override - protected void onDraw(Canvas canvas) { - super.onDraw(canvas); - - int centerX = getWidth() / 2; - int centerY = getHeight() / 2; - int radius = Math.min(centerX, centerY); - - this.picasso.setColor(this.color); - canvas.drawCircle(centerX, centerY, radius, this.picasso); - } -} diff --git a/app/src/main/java/com/example/jmastermind/MainActivity (copy 1).java b/app/src/main/java/com/example/jmastermind/MainActivity (copy 1).java deleted file mode 100644 index 92bc607..0000000 --- a/app/src/main/java/com/example/jmastermind/MainActivity (copy 1).java +++ /dev/null @@ -1,22 +0,0 @@ -package com.example.jmastermind; - -import androidx.appcompat.app.AppCompatActivity; -import android.os.Bundle; -import android.widget.Button; -import com.example.jmastermind.Events.MenuEvent; -import com.example.jmastermind.Game.*; - -public class MainActivity extends AppCompatActivity { - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.menu); - - Button btnSoloGame = (Button) findViewById(R.id.robotselect); - btnSoloGame.setOnClickListener(new MenuEvent(this, SoloGame.class)); - - Button btnMultiGame = (Button) findViewById(R.id.jcjselect); - btnMultiGame.setOnClickListener(new MenuEvent(this, MultiGame.class)); - } -} \ No newline at end of file