Bug mineurs, quand les on recup les items où que le joeur meurt

This commit is contained in:
Amaury Joly 2020-12-14 14:35:58 +01:00
parent 53720579b3
commit 9bde606748
6 changed files with 14 additions and 11 deletions

View File

@ -26,7 +26,7 @@ public class Controle4Directions extends RealisateurDeDeplacement {
public boolean realiserDeplacement() { public boolean realiserDeplacement() {
boolean ret = false; boolean ret = false;
for (ElementDynamique e : lstEntitesDynamiques) { for (ElementDynamique e : lstEntitesDynamiques) {
if (e instanceof Entite && directionCourante != null) if (e instanceof Entite && directionCourante != null && !((Entite) e).estMort())
switch (directionCourante) { switch (directionCourante) {
case gauche: case gauche:
case droite: case droite:

View File

@ -10,10 +10,10 @@ public class Items extends RealisateurDeDeplacement {
@Override @Override
protected boolean realiserDeplacement() { protected boolean realiserDeplacement() {
for (ElementDynamique e : lstEntitesDynamiques) for (ElementDynamique e : lstEntitesDynamiques)
if(e instanceof modele.donnees.Items) { if(e instanceof modele.donnees.Items && ((modele.donnees.Items) e).estRecoltable()) {
modele.donnees.Items i = (modele.donnees.Items) e; modele.donnees.Items i = (modele.donnees.Items) e;
if(i.regarderDevantSoit() instanceof Heros) if(i.regarderDevantSoit() instanceof Heros)
return i.estRecolte(); return i.avancerDirectionChoisie(null);
} }
return false; return false;
} }

View File

@ -242,8 +242,10 @@ public class Jeu {
} }
private void retirerItem(Point pCourant, modele.donnees.Items elt) { private void retirerItem(Point pCourant, modele.donnees.Items elt) {
elt.recolter();
grilleEntites[pCourant.x][pCourant.y][1] = null; grilleEntites[pCourant.x][pCourant.y][1] = null;
map.put(elt, null); map.remove(elt);
} }
/** Indique si p est contenu dans la grille /** Indique si p est contenu dans la grille

View File

@ -8,5 +8,5 @@ public abstract class ElementFond extends ObjetGyromide {
} }
public abstract boolean peutPermettreDeMonterDescendre(); public abstract boolean peutPermettreDeMonterDescendre();
public abstract boolean estRectable(); public abstract boolean estRecoltable();
} }

View File

@ -4,6 +4,8 @@ import modele.calculs.Direction;
import modele.calculs.Jeu; import modele.calculs.Jeu;
public abstract class Items extends ElementFond implements ElementDynamique { public abstract class Items extends ElementFond implements ElementDynamique {
private boolean recolte = false;
public Items(Jeu jeu) { public Items(Jeu jeu) {
super(jeu); super(jeu);
} }
@ -14,8 +16,8 @@ public abstract class Items extends ElementFond implements ElementDynamique {
} }
@Override @Override
public boolean estRectable() { public boolean estRecoltable() {
return true; return !recolte;
} }
@Override @Override
@ -27,7 +29,7 @@ public abstract class Items extends ElementFond implements ElementDynamique {
return jeu.regarderDevantSoit(this); return jeu.regarderDevantSoit(this);
} }
public boolean estRecolte() { public void recolter() {
return avancerDirectionChoisie(null); recolte = true;
} }
} }

View File

@ -9,8 +9,7 @@ public abstract class Radis extends Items {
// TODO // TODO
@Override @Override
public boolean estRecolte() { public void recolter() {
return false;
} }
// TODO // TODO