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) {
|
public CaseAbstraite(int vert, int hor) {
|
||||||
coord = new Coordonnees(vert, hor);
|
coord = new Coordonnees(vert, hor);
|
||||||
|
|
||||||
// peupler ici ?
|
|
||||||
voisins = new HashMap<PointsCardinaux, CaseAbstraite>();
|
voisins = new HashMap<PointsCardinaux, CaseAbstraite>();
|
||||||
|
|
||||||
occupant = null;
|
occupant = null;
|
||||||
objetOccupant= 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) {
|
public void ajouterVoisin(PointsCardinaux p, CaseAbstraite c) {
|
||||||
voisins.put(p, 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;
|
package Etats;
|
||||||
|
|
||||||
import Comportements.ComportementAction;
|
import Comportements.*;
|
||||||
import Comportements.ComportementActionChangerCouleurCase;
|
|
||||||
import Comportements.ComportementActionRamasserNeige;
|
|
||||||
import Comportements.ComportementActionSeDeplacer;
|
|
||||||
import Comportements.ComportementActionTirerBalon;
|
|
||||||
import Comportements.ComportementActionTirerBouleDeNeige;
|
|
||||||
import Comportements.EAction;
|
|
||||||
import Person.Personnage;
|
import Person.Personnage;
|
||||||
|
|
||||||
public class EtatPersonnageOK extends EtatPersonnageAbstrait {
|
public class EtatPersonnageOK extends EtatPersonnageAbstrait {
|
||||||
@ -17,7 +11,7 @@ public class EtatPersonnageOK extends EtatPersonnageAbstrait {
|
|||||||
super(perso);
|
super(perso);
|
||||||
// TODO Auto-generated constructor stub
|
// TODO Auto-generated constructor stub
|
||||||
|
|
||||||
this.ChangerAction(EAction.Null);
|
this.ChangerAction(EAction.SeDeplacer);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -38,6 +32,11 @@ public class EtatPersonnageOK extends EtatPersonnageAbstrait {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void mediationConflits() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public void ChangerAction(EAction nouvelAction) {
|
public void ChangerAction(EAction nouvelAction) {
|
||||||
|
|
||||||
switch(nouvelAction)
|
switch(nouvelAction)
|
||||||
@ -57,9 +56,9 @@ public class EtatPersonnageOK extends EtatPersonnageAbstrait {
|
|||||||
case TirerBouleDeNeige:
|
case TirerBouleDeNeige:
|
||||||
Action = new ComportementActionTirerBouleDeNeige();
|
Action = new ComportementActionTirerBouleDeNeige();
|
||||||
break;
|
break;
|
||||||
case Null:
|
//case Null:
|
||||||
Action = null;
|
//Action = null;
|
||||||
break;
|
//break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -13,6 +13,11 @@ public class FabriquePlateauBattleZone extends FabriquePlateauAbstraite {
|
|||||||
plateau[ligne][col] = new CaseColore(col, ligne);
|
plateau[ligne][col] = new CaseColore(col, ligne);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
for (CaseAbstraite[] tabC : plateau) {
|
||||||
|
for (CaseAbstraite c : tabC) {
|
||||||
|
c.generateVoisins(plateau);
|
||||||
|
}
|
||||||
|
}
|
||||||
return plateau;
|
return plateau;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user