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

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
* 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)
}

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)

View File

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

View File

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

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

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