Implementation des models

This commit is contained in:
Amaury 2020-12-02 16:29:25 +01:00
parent 9f0c1e337a
commit 80f0899bf1
15 changed files with 223 additions and 26 deletions

View File

@ -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;
}
}

View File

@ -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 Colonne(Jeu _jeu) { super(_jeu); }
public boolean peutEtreEcrase() { return false; } @Override
public boolean peutServirDeSupport() { return true; } public boolean peutEtreEcrase() {
public boolean peutPermettreDeMonterDescendre() { return false; }; return false;
}
@Override
public boolean peutServirDeSupport() {
return true;
}
// TODO
@Override
public String toString() {
return null;
}
} }

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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();
}

View File

@ -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();
}

View File

@ -3,18 +3,20 @@
* To change this template file, choose Tools | Templates * To change this template file, choose Tools | Templates
* and open the template in the editor. * 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 { public abstract class Entite extends ElementPhysique{
protected Jeu jeu; public Entite(Jeu jeu) {
super(jeu);
public Entite(Jeu _jeu) {
jeu = _jeu;
} }
public abstract boolean peutEtreEcrase(); // l'entité peut être écrasée (par exemple par une colonne ...) public boolean avancerDirectionChoisie(Direction d) {
public abstract boolean peutServirDeSupport(); // permet de stopper la gravité, prendre appui pour sauter return jeu.deplacerEntite(this, d);
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) }
public Entite regarderDansLaDirection(Direction d) {
return jeu.regarderDansLaDirection(this, d);
}
} }

View File

@ -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) * Entités amenées à bouger (colonnes, ennemis)

View File

@ -3,17 +3,30 @@
* To change this template file, choose Tools | Templates * To change this template file, choose Tools | Templates
* and open the template in the editor. * and open the template in the editor.
*/ */
package modele.plateau; package modele.donnees;
import modele.calculs.Jeu;
/** /**
* Héros du jeu * Héros du jeu
*/ */
public class Heros extends EntiteDynamique { public class Heros extends Entite {
public Heros(Jeu _jeu) { public Heros(Jeu _jeu) {
super(_jeu); super(_jeu);
} }
public boolean peutEtreEcrase() { return true; } @Override
public boolean peutServirDeSupport() { return true; } public boolean peutEtreEcrase() {
public boolean peutPermettreDeMonterDescendre() { return false; }; return true;
}
@Override
public boolean peutServirDeSupport() {
return false;
}
@Override
public String toString() {
return null;
}
} }

View File

@ -5,6 +5,8 @@
*/ */
package modele.donnees; package modele.donnees;
import modele.calculs.Jeu;
import java.util.Random; import java.util.Random;
/** /**
@ -27,6 +29,7 @@ public class IA extends Entite {
return false; return false;
} }
// TODO
@Override @Override
public String toString() { public String toString() {
return null; return null;

View File

@ -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();
}

View File

@ -1,5 +1,15 @@
package modele.plateau; package modele.donnees;
public class Mur extends EntiteStatique { import modele.calculs.Jeu;
public Mur(Jeu _jeu) { super(_jeu); }
public class Mur extends Decor {
public Mur(Jeu jeu) {
super(jeu);
}
// TODO
@Override
public String toString() {
return null;
}
} }

View File

@ -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();
}

View File

@ -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;
}
}