Voisins. Solved execution error.
This commit is contained in:
parent
c20dc161eb
commit
673ea047b7
@ -18,13 +18,38 @@ public abstract class CaseAbstraite {
|
||||
public CaseAbstraite(int vert, int hor) {
|
||||
coord = new Coordonnees(vert, hor);
|
||||
|
||||
// peupler ici ?
|
||||
voisins = new HashMap<PointsCardinaux, CaseAbstraite>();
|
||||
|
||||
occupant = null;
|
||||
objetOccupant= null;
|
||||
}
|
||||
|
||||
public void generateVoisins(CaseAbstraite[][] plateau) {
|
||||
for (int i = coord.getHor() - 1; i < coord.getHor() + 1; i++) {
|
||||
for (int j = coord.getVert() - 1; j < coord.getVert() + 1; j++) {
|
||||
if (i > 0 && i < plateau.length && j > 0 && j < plateau[0].length) {
|
||||
if (i == coord.getHor() && j < coord.getVert()) {
|
||||
voisins.put(PointsCardinaux.N, plateau[i][j]);
|
||||
} else if (i > coord.getHor() && j < coord.getVert()) {
|
||||
voisins.put(PointsCardinaux.NE, plateau[i][j]);
|
||||
} else if (i > coord.getHor() && j == coord.getVert()) {
|
||||
voisins.put(PointsCardinaux.E, plateau[i][j]);
|
||||
} else if (i > coord.getHor() && j > coord.getVert()) {
|
||||
voisins.put(PointsCardinaux.NE, plateau[i][j]);
|
||||
} else if (i == coord.getHor() && j > coord.getVert()) {
|
||||
voisins.put(PointsCardinaux.S, plateau[i][j]);
|
||||
} else if (i < coord.getHor() && j > coord.getVert()) {
|
||||
voisins.put(PointsCardinaux.SW, plateau[i][j]);
|
||||
} else if (i < coord.getHor() && j == coord.getVert()) {
|
||||
voisins.put(PointsCardinaux.W, plateau[i][j]);
|
||||
} else if (i < coord.getHor() && j < coord.getVert()) {
|
||||
voisins.put(PointsCardinaux.NW, plateau[i][j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void ajouterVoisin(PointsCardinaux p, CaseAbstraite c) {
|
||||
voisins.put(p, c);
|
||||
}
|
||||
|
@ -29,4 +29,9 @@ public class EtatPersonnageCombattant extends EtatPersonnageAbstrait {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mediationConflits() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -36,4 +36,9 @@ public class EtatPersonnageKO extends EtatPersonnageAbstrait {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mediationConflits() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,12 +1,6 @@
|
||||
package Etats;
|
||||
|
||||
import Comportements.ComportementAction;
|
||||
import Comportements.ComportementActionChangerCouleurCase;
|
||||
import Comportements.ComportementActionRamasserNeige;
|
||||
import Comportements.ComportementActionSeDeplacer;
|
||||
import Comportements.ComportementActionTirerBalon;
|
||||
import Comportements.ComportementActionTirerBouleDeNeige;
|
||||
import Comportements.EAction;
|
||||
import Comportements.*;
|
||||
import Person.Personnage;
|
||||
|
||||
public class EtatPersonnageOK extends EtatPersonnageAbstrait {
|
||||
@ -16,9 +10,9 @@ public class EtatPersonnageOK extends EtatPersonnageAbstrait {
|
||||
public EtatPersonnageOK(Personnage perso) {
|
||||
super(perso);
|
||||
// TODO Auto-generated constructor stub
|
||||
|
||||
this.ChangerAction(EAction.Null);
|
||||
}
|
||||
|
||||
this.ChangerAction(EAction.SeDeplacer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void AnalyseJoueur() {
|
||||
@ -37,10 +31,15 @@ public class EtatPersonnageOK extends EtatPersonnageAbstrait {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
public void ChangerAction(EAction nouvelAction){
|
||||
|
||||
switch(nouvelAction)
|
||||
|
||||
@Override
|
||||
public void mediationConflits() {
|
||||
|
||||
}
|
||||
|
||||
public void ChangerAction(EAction nouvelAction) {
|
||||
|
||||
switch(nouvelAction)
|
||||
{
|
||||
case ChangerCouleurCase:
|
||||
Action = new ComportementActionChangerCouleurCase();
|
||||
@ -57,10 +56,10 @@ public class EtatPersonnageOK extends EtatPersonnageAbstrait {
|
||||
case TirerBouleDeNeige:
|
||||
Action = new ComportementActionTirerBouleDeNeige();
|
||||
break;
|
||||
case Null:
|
||||
Action = null;
|
||||
break;
|
||||
default:
|
||||
//case Null:
|
||||
//Action = null;
|
||||
//break;
|
||||
default:
|
||||
break;
|
||||
|
||||
}
|
||||
|
@ -13,6 +13,11 @@ public class FabriquePlateauBattleZone extends FabriquePlateauAbstraite {
|
||||
plateau[ligne][col] = new CaseColore(col, ligne);
|
||||
}
|
||||
}
|
||||
for (CaseAbstraite[] tabC : plateau) {
|
||||
for (CaseAbstraite c : tabC) {
|
||||
c.generateVoisins(plateau);
|
||||
}
|
||||
}
|
||||
return plateau;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user