Commit b961791c authored by theray1's avatar theray1
Browse files

added unimplemented methods and changed organisation of classes of the project

parent 2142f440
package project;
public class Bot extends Joueur{
public void JouerIATemeraire() {
}
}
......@@ -3,7 +3,7 @@ package project;
public class Brave implements Regle{
@Override
public void jouerCaseBlanche(Case caseBlanche, Joueur joueur, Plateau plateau) {
public void jouerCase(Case caseBlanche, Joueur joueur, Plateau plateau) {
// TODO Auto-generated method stub
}
......
package project;
public class Joueur {
Partie partie;
public Joueur() {
}
public void JouerGloutonBrave() {
}
public void JouerGloutonTemeraire() {
}
}
package project;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingUtilities;
public class Main {
public static void main(String[] args) {
System.out.println("test");
Window window = new Window("bite");
}
}
package project;
public class PRQuadtree implements Quadtree{
private PRQuadtreeNode root;
public PRQuadtree() {
this.root = null;
}
public boolean estVide() {
return this.root == null;
}
public PRQuadtreeNode recherche(int longueur, Case caseRecherchée) {
Case caseBasGauche = new Case(0, 0);
return __recherche(longueur, caseRecherchée, caseBasGauche);
}
private PRQuadtreeNode __recherche(int longueur, Case caseRecherchée, Case caseBasGauche) {
//TODO : implementer la recherche dans le PR TREE
return root;
}
}
package project;
public class Partie {
Plateau plateau;
Joueur joueur1;
Joueur joueur2;
Regle règle;
int tailePlateau;
public int getTailePlateau() {
return tailePlateau;
}
public void setTailePlateau(int tailePlateau) {
this.tailePlateau = tailePlateau;
}
public Plateau getPlateau() {
return plateau;
}
public void setPlateau(Plateau plateau) {
this.plateau = plateau;
}
public Joueur getJoueur1() {
return joueur1;
}
public void setJoueur1(Joueur joueur1) {
this.joueur1 = joueur1;
}
public Joueur getJoueur2() {
return joueur2;
}
public void setJoueur2(Joueur joueur2) {
this.joueur2 = joueur2;
}
public Regle getRègle() {
return règle;
}
public void setRègle(Regle règle) {
this.règle = règle;
}
public Partie(Plateau plateau, Joueur joueur1, Joueur joueur2, Regle règle) {
this.plateau = plateau;
this.joueur1 = joueur1;
this.joueur2 = joueur2;
this.règle = règle;
}
public void demarrerPartie() {
//TODO : implementer
}
public void finirPartie() {
//TODO : implementer
}
public void CalculeScore() {
//TODO : METHODE OBLIGATOIRE
}
}
......@@ -4,19 +4,35 @@ public class Plateau {
//attributs
private int longueur;
private PRQuadtreeNode arbrePlateau;
private QuadtreeNode arbrePlateau;
//constructeur : un plateau non subdivisé
public Plateau (int longueur){
this.longueur = longueur;
PRQuadtree arbPla = new PRQuadtree();
Quadtree arbPla = new Quadtree();
}
public void RemplirRegion() {
//TODO : METHODE OBLIGATOIRE
}
public void RemplirPlateau() {
//TODO : METHODE OBLIGATOIRE
}
public int EvalCaseBrave(Case c) {
//TODO : METHODE OBLIGATOIRE
return 0;
}
public int EvalCaseTemeraire(Case c) {
//TODO : METHODE OBLIGATOIRE
return 0;
}
public Case[] voisins(){
Case[] lambda = null;
/*Case[] lambda = null;
int x = 0;
Case c = null;
if (this.ligne > 1 && this.ligne < longueur && this.colonne > 1 && this.colonne < longueur){
......@@ -30,13 +46,14 @@ public class Plateau {
}
}
}
return lambda;
return lambda;*/
return null;
}
public void colorierCasesBrave(Case c){
/*public void colorierCasesBrave(Case c){
Case[] voisinage = c.voisins();
//TODO : colorier c
for (Case x : voisinage){
......@@ -44,6 +61,6 @@ public class Plateau {
//TODO : colorier x
}
}
}
}*/
}
package project;
public interface Quadtree {
public class Quadtree {
private QuadtreeNode root;
public Quadtree() {
this.root = null;
}
public Quadtree(int longueur) {
this.root.initalisationPRQuadtree(longueur, 0, 0);
}
public boolean estVide() {
return this.root == null;
}
public QuadtreeNode recherche(int longueur, Case caseRecherchée) {
Case caseBasGauche = new Case(0, 0);
return __recherche(longueur, caseRecherchée, caseBasGauche);
}
private QuadtreeNode __recherche(int longueur, Case caseRecherchée, Case caseBasGauche) {
//TODO : implementer la recherche dans le PR TREE
return root;
}
}
package project;
public class PRQuadtreeNode {
private PRQuadtreeNode v1, v2, v3, v4;
private Zone zone;
public class QuadtreeNode {
private QuadtreeNode v1, v2, v3, v4;
private Region region;
public PRQuadtreeNode() {
public QuadtreeNode() {
this.v1 = null;
this.v2 = null;
this.v3 = null;
this.v4 = null;
this.zone = null;
this.region = null;
}
public boolean estFeuille() {
......@@ -32,4 +32,8 @@ public class PRQuadtreeNode {
return null;
}
public void initalisationPRQuadtree(int longueur, int ibg, int jbg) {
//TODO : initialisation d'un arbre
}
}
package project;
public class Region implements Zone{
public class Region {
private Case hautDroite;
private Case basGauche;
......@@ -11,17 +11,21 @@ public class Region implements Zone{
return (this.getBasGauche().colonne - this.getHautDroite().colonne + 1);// rajout de +1 car entre la région entre les colonnes 1 et 3 est de longueur 3, mais 3-1 = 2
}
@Override
public Region(Case basGauche, Case hautDroite) {
this.basGauche = basGauche;
this.hautDroite = hautDroite;
}
public boolean estAcquise() {
// TODO Auto-generated method stub
return false;
}
@Override
public Case getBasGauche() {
// TODO Auto-generated method stub
return null;
}
@Override
public Case getHautDroite() {
// TODO Auto-generated method stub
return null;
......
package project;
public interface Regle {
public void jouerCaseBlanche(Case caseBlanche, Joueur joueur, Plateau plateau);
public void jouerCase(Case caseBlanche, Joueur joueur, Plateau plateau);
}
package project;
public class Temeraire implements Regle{
@Override
public void jouerCase(Case caseBlanche, Joueur joueur, Plateau plateau) {
// TODO Auto-generated method stub
}
}
......@@ -7,4 +7,18 @@ import javax.swing.JPanel;
public class Window extends JFrame{
public Window(String title) {
super(title);
buildContentPane();
}
private void buildContentPane(){
JPanel jeu = new JPanel();
jeu.setPreferredSize(new Dimension(1220, 1080));
this.getContentPane().add(jeu);
this.setVisible(true);
this.pack();
this.setLocationRelativeTo(null);
}
}
package project;
public interface Zone {
public boolean estAcquise();
public Case getBasGauche();
public Case getHautDroite();
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment