diff --git a/src/modele/donnees/Bombe.java b/src/modele/donnees/Bombe.java new file mode 100644 index 0000000..674ad73 --- /dev/null +++ b/src/modele/donnees/Bombe.java @@ -0,0 +1,21 @@ +package modele.donnees; + +import modele.calculs.Jeu; + +public class Bombe extends Items { + public Bombe(Jeu jeu) { + super(jeu); + } + + // TODO + @Override + public boolean estRecolte() { + return false; + } + + // TODO + @Override + public String toString() { + return null; + } +} diff --git a/src/modele/donnees/Colonne.java b/src/modele/donnees/Colonne.java index a9415a5..cb66e5a 100644 --- a/src/modele/donnees/Colonne.java +++ b/src/modele/donnees/Colonne.java @@ -1,9 +1,22 @@ -package modele.plateau; +package modele.donnees; -public class Colonne extends EntiteDynamique { +import modele.calculs.Jeu; + +public class Colonne extends Entite { public Colonne(Jeu _jeu) { super(_jeu); } - public boolean peutEtreEcrase() { return false; } - public boolean peutServirDeSupport() { return true; } - public boolean peutPermettreDeMonterDescendre() { return false; }; + @Override + public boolean peutEtreEcrase() { + return false; + } + + @Override + public boolean peutServirDeSupport() { + return true; + } + // TODO + @Override + public String toString() { + return null; + } } diff --git a/src/modele/donnees/Corde.java b/src/modele/donnees/Corde.java new file mode 100644 index 0000000..7aa328d --- /dev/null +++ b/src/modele/donnees/Corde.java @@ -0,0 +1,15 @@ +package modele.donnees; + +import modele.calculs.Jeu; + +public class Corde extends DecorFond { + public Corde(Jeu jeu) { + super(jeu); + } + + // TODO + @Override + public String toString() { + return null; + } +} diff --git a/src/modele/donnees/Decor.java b/src/modele/donnees/Decor.java new file mode 100644 index 0000000..5a8b2e1 --- /dev/null +++ b/src/modele/donnees/Decor.java @@ -0,0 +1,19 @@ +package modele.donnees; + +import modele.calculs.Jeu; + +public abstract class Decor extends ElementPhysique { + public Decor(Jeu jeu) { + super(jeu); + } + + @Override + public boolean peutEtreEcrase() { + return false; + } + + @Override + public boolean peutServirDeSupport() { + return true; + } +} diff --git a/src/modele/donnees/DecorFond.java b/src/modele/donnees/DecorFond.java new file mode 100644 index 0000000..26f3cba --- /dev/null +++ b/src/modele/donnees/DecorFond.java @@ -0,0 +1,19 @@ +package modele.donnees; + +import modele.calculs.Jeu; + +public abstract class DecorFond extends ElementFond { + public DecorFond(Jeu jeu) { + super(jeu); + } + + @Override + public boolean peutPermettreDeMonterDescendre() { + return true; + } + + @Override + public boolean estRectoble() { + return false; + } +} diff --git a/src/modele/donnees/ElementFond.java b/src/modele/donnees/ElementFond.java new file mode 100644 index 0000000..a2023bd --- /dev/null +++ b/src/modele/donnees/ElementFond.java @@ -0,0 +1,12 @@ +package modele.donnees; + +import modele.calculs.Jeu; + +public abstract class ElementFond extends ObjetGyromide { + public ElementFond(Jeu jeu) { + super(jeu); + } + + public abstract boolean peutPermettreDeMonterDescendre(); + public abstract boolean estRectoble(); +} diff --git a/src/modele/donnees/ElementPhysique.java b/src/modele/donnees/ElementPhysique.java new file mode 100644 index 0000000..254b0f4 --- /dev/null +++ b/src/modele/donnees/ElementPhysique.java @@ -0,0 +1,13 @@ +package modele.donnees; + +import modele.calculs.Jeu; + +public abstract class ElementPhysique extends ObjetGyromide { + + public ElementPhysique(Jeu jeu) { + super(jeu); + } + + public abstract boolean peutEtreEcrase(); + public abstract boolean peutServirDeSupport(); +} diff --git a/src/modele/donnees/Entite.java b/src/modele/donnees/Entite.java index a56b695..60d409c 100644 --- a/src/modele/donnees/Entite.java +++ b/src/modele/donnees/Entite.java @@ -3,18 +3,20 @@ * To change this template file, choose Tools | Templates * and open the template in the editor. */ -package modele.plateau; +package modele.donnees; -import modele.deplacements.Direction; +import modele.calculs.Direction; +import modele.calculs.Jeu; -public abstract class Entite { - protected Jeu jeu; - - public Entite(Jeu _jeu) { - jeu = _jeu; +public abstract class Entite extends ElementPhysique{ + public Entite(Jeu jeu) { + super(jeu); + } + + public boolean avancerDirectionChoisie(Direction d) { + return jeu.deplacerEntite(this, d); + } + public Entite regarderDansLaDirection(Direction d) { + return jeu.regarderDansLaDirection(this, d); } - - public abstract boolean peutEtreEcrase(); // l'entité peut être écrasée (par exemple par une colonne ...) - public abstract boolean peutServirDeSupport(); // permet de stopper la gravité, prendre appui pour sauter - public abstract boolean peutPermettreDeMonterDescendre(); // si utilisation de corde (attention, l'environnement ne peut pour l'instant sotker qu'une entité par case (si corde : 2 nécessaires), améliorations à prévoir) } diff --git a/src/modele/donnees/EntiteDynamique.java b/src/modele/donnees/EntiteDynamique.java index dfe7910..e820ff8 100644 --- a/src/modele/donnees/EntiteDynamique.java +++ b/src/modele/donnees/EntiteDynamique.java @@ -1,6 +1,7 @@ -package modele.plateau; +package modele.donnees; -import modele.deplacements.Direction; +import modele.calculs.Direction; +import modele.calculs.Jeu; /** * Entités amenées à bouger (colonnes, ennemis) diff --git a/src/modele/donnees/Heros.java b/src/modele/donnees/Heros.java index 992d257..7b54519 100644 --- a/src/modele/donnees/Heros.java +++ b/src/modele/donnees/Heros.java @@ -3,17 +3,30 @@ * To change this template file, choose Tools | Templates * and open the template in the editor. */ -package modele.plateau; +package modele.donnees; + +import modele.calculs.Jeu; /** * Héros du jeu */ -public class Heros extends EntiteDynamique { +public class Heros extends Entite { public Heros(Jeu _jeu) { super(_jeu); } - public boolean peutEtreEcrase() { return true; } - public boolean peutServirDeSupport() { return true; } - public boolean peutPermettreDeMonterDescendre() { return false; }; + @Override + public boolean peutEtreEcrase() { + return true; + } + + @Override + public boolean peutServirDeSupport() { + return false; + } + + @Override + public String toString() { + return null; + } } diff --git a/src/modele/donnees/IA.java b/src/modele/donnees/IA.java index 53ac0e6..7b3388f 100644 --- a/src/modele/donnees/IA.java +++ b/src/modele/donnees/IA.java @@ -5,6 +5,8 @@ */ package modele.donnees; +import modele.calculs.Jeu; + import java.util.Random; /** @@ -27,6 +29,7 @@ public class IA extends Entite { return false; } + // TODO @Override public String toString() { return null; diff --git a/src/modele/donnees/Items.java b/src/modele/donnees/Items.java new file mode 100644 index 0000000..4225c75 --- /dev/null +++ b/src/modele/donnees/Items.java @@ -0,0 +1,21 @@ +package modele.donnees; + +import modele.calculs.Jeu; + +public abstract class Items extends ElementFond { + public Items(Jeu jeu) { + super(jeu); + } + + @Override + public boolean peutPermettreDeMonterDescendre() { + return false; + } + + @Override + public boolean estRectoble() { + return true; + } + + public abstract boolean estRecolte(); +} diff --git a/src/modele/donnees/Mur.java b/src/modele/donnees/Mur.java index 53055c0..4d08319 100644 --- a/src/modele/donnees/Mur.java +++ b/src/modele/donnees/Mur.java @@ -1,5 +1,15 @@ -package modele.plateau; +package modele.donnees; -public class Mur extends EntiteStatique { - public Mur(Jeu _jeu) { super(_jeu); } +import modele.calculs.Jeu; + +public class Mur extends Decor { + public Mur(Jeu jeu) { + super(jeu); + } + + // TODO + @Override + public String toString() { + return null; + } } diff --git a/src/modele/donnees/ObjetGyromide.java b/src/modele/donnees/ObjetGyromide.java new file mode 100644 index 0000000..529c07d --- /dev/null +++ b/src/modele/donnees/ObjetGyromide.java @@ -0,0 +1,14 @@ +package modele.donnees; + +import modele.calculs.Jeu; + +public abstract class ObjetGyromide { + protected Jeu jeu; + + public ObjetGyromide(Jeu jeu) { + this.jeu = jeu; + } + + @Override + public abstract String toString(); +} diff --git a/src/modele/donnees/Radis.java b/src/modele/donnees/Radis.java new file mode 100644 index 0000000..2c1ae9e --- /dev/null +++ b/src/modele/donnees/Radis.java @@ -0,0 +1,21 @@ +package modele.donnees; + +import modele.calculs.Jeu; + +public abstract class Radis extends Items { + public Radis(Jeu jeu) { + super(jeu); + } + + // TODO + @Override + public boolean estRecolte() { + return false; + } + + // TODO + @Override + public String toString() { + return null; + } +}