From 41ab44ae4ba43425db127af1b273315f74c39977 Mon Sep 17 00:00:00 2001 From: aminecmi Date: Sat, 31 Jan 2015 10:40:55 +0100 Subject: [PATCH] Moved object searching and person searching to person. --- src/Cases/CaseAbstraite.java | 186 +---------------------------------- src/Person/Personnage.java | 177 +++++++++++++++++++++++++++++++++ 2 files changed, 182 insertions(+), 181 deletions(-) diff --git a/src/Cases/CaseAbstraite.java b/src/Cases/CaseAbstraite.java index 97d7f6c..e3401fc 100644 --- a/src/Cases/CaseAbstraite.java +++ b/src/Cases/CaseAbstraite.java @@ -1,7 +1,5 @@ package Cases; -import Etats.EtatPersonnageKO; -import Etats.EtatPersonnageOK; import Objets.ObjetAbstrait; import Person.Personnage; @@ -42,7 +40,11 @@ public abstract class CaseAbstraite { public Personnage getOccupant() { return occupant; } - + + public void setOccupant(Personnage occupant) { + this.occupant = occupant; + } + public ObjetAbstrait getObjetOccupant() { return objetOccupant; } @@ -50,10 +52,6 @@ public abstract class CaseAbstraite { public void setObjetOccupant(ObjetAbstrait objetOccupant) { this.objetOccupant = objetOccupant; } - - public void setOccupant(Personnage occupant) { - this.occupant = occupant; - } public HashMap getVoisins() { return voisins; @@ -62,178 +60,4 @@ public abstract class CaseAbstraite { public void setVoisins(HashMap voisins) { this.voisins = voisins; } - - public ObjetAbstrait rechercheObjetProche(){ - ObjetAbstrait objetDeLaCase = null; - - for (PointsCardinaux mapKey : voisins.keySet()) { - if (voisins.get(mapKey).getObjetOccupant() != null) - { - objetDeLaCase = voisins.get(mapKey).getObjetOccupant(); - } - } - if (objetDeLaCase != null) - { - for (PointsCardinaux mapKey : voisins.keySet()) { - switch(mapKey) - { - case N: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getObjetOccupant(); - } - break; - case NE: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getObjetOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.NE) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.NE).getObjetOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getObjetOccupant(); - } - break; - case E: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getObjetOccupant(); - } - break; - case SE: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getObjetOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.SE) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.SE).getObjetOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getObjetOccupant(); - } - break; - case S: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getObjetOccupant(); - } - break; - case SW: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getObjetOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.SW) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.SW).getObjetOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getObjetOccupant(); - } - break; - case W: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getObjetOccupant(); - } - break; - case NW: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getObjetOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.NW) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.NW).getObjetOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null){ - objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getObjetOccupant(); - } - break; - default: - break; - - } - } - } - return objetDeLaCase; - } - - public Personnage rechercheJoueur(){ - Personnage personne = null; - - for (PointsCardinaux mapKey : voisins.keySet()) { - if (voisins.get(mapKey).getOccupant() != null) - { - personne = voisins.get(mapKey).getOccupant(); - } - } - if (personne != null) - { - for (PointsCardinaux mapKey : voisins.keySet()) { - switch(mapKey) - { - case N: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getOccupant(); - } - break; - case NE: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.NE) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.NE).getOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getOccupant(); - } - break; - case E: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getOccupant(); - } - break; - case SE: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.SE) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.SE).getOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getOccupant(); - } - break; - case S: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getOccupant(); - } - break; - case SW: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.SW) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.SW).getOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getOccupant(); - } - break; - case W: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getOccupant(); - } - break; - case NW: - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.NW) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.NW).getOccupant(); - } - if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null){ - personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getOccupant(); - } - break; - default: - break; - - } - } - } - return personne; - } } \ No newline at end of file diff --git a/src/Person/Personnage.java b/src/Person/Personnage.java index 6ad1380..83e58ac 100644 --- a/src/Person/Personnage.java +++ b/src/Person/Personnage.java @@ -1,6 +1,7 @@ package Person; import Cases.CaseAbstraite; +import Cases.PointsCardinaux; import Comportements.ComportementAction; import Comportements.EAction; import Composition.PersonnagesAbstraits; @@ -8,6 +9,9 @@ import Etats.EEtat; import Etats.EtatPersonnageAbstrait; import Etats.EtatPersonnageKO; import Etats.EtatPersonnageOK; +import Objets.ObjetAbstrait; + +import java.util.HashMap; public class Personnage extends PersonnagesAbstraits { @@ -21,6 +25,7 @@ public class Personnage extends PersonnagesAbstraits { protected double porter; protected EAction action; private EtatPersonnageAbstrait etatCourant; + private HashMap voisins; protected Personnage(String name, ComportementAction c) { this.nom = name; @@ -119,6 +124,8 @@ public class Personnage extends PersonnagesAbstraits { public void setCaseCourante(CaseAbstraite caseCourante) { this.caseCourante = caseCourante; + this.voisins = this.caseCourante.getVoisins(); + } public double getPorter() { @@ -151,4 +158,174 @@ public class Personnage extends PersonnagesAbstraits { etatCourant.ConflitJoueur(); } + public ObjetAbstrait rechercheObjetProche() { + + ObjetAbstrait objetDeLaCase = null; + + for (PointsCardinaux mapKey : voisins.keySet()) { + if (voisins.get(mapKey).getObjetOccupant() != null) { + objetDeLaCase = voisins.get(mapKey).getObjetOccupant(); + } + } + if (objetDeLaCase != null) { + for (PointsCardinaux mapKey : voisins.keySet()) { + switch (mapKey) { + case N: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getObjetOccupant(); + } + break; + case NE: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getObjetOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.NE) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.NE).getObjetOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getObjetOccupant(); + } + break; + case E: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getObjetOccupant(); + } + break; + case SE: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getObjetOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.SE) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.SE).getObjetOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getObjetOccupant(); + } + break; + case S: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getObjetOccupant(); + } + break; + case SW: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getObjetOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.SW) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.SW).getObjetOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getObjetOccupant(); + } + break; + case W: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getObjetOccupant(); + } + break; + case NW: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getObjetOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.NW) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.NW).getObjetOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null) { + objetDeLaCase = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getObjetOccupant(); + } + break; + default: + break; + + } + } + } + return objetDeLaCase; + } + + + public Personnage rechercheJoueur() { + Personnage personne = null; + + for (PointsCardinaux mapKey : voisins.keySet()) { + if (voisins.get(mapKey).getOccupant() != null) { + personne = voisins.get(mapKey).getOccupant(); + } + } + if (personne != null) { + for (PointsCardinaux mapKey : voisins.keySet()) { + switch (mapKey) { + case N: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getOccupant(); + } + break; + case NE: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.NE) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.NE).getOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getOccupant(); + } + break; + case E: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getOccupant(); + } + break; + case SE: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.E) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.E).getOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.SE) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.SE).getOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getOccupant(); + } + break; + case S: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getOccupant(); + } + break; + case SW: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.S) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.S).getOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.SW) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.SW).getOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getOccupant(); + } + break; + case W: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getOccupant(); + } + break; + case NW: + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.W) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.W).getOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.NW) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.NW).getOccupant(); + } + if (voisins.get(mapKey).getVoisins().get(PointsCardinaux.N) != null) { + personne = voisins.get(mapKey).getVoisins().get(PointsCardinaux.N).getOccupant(); + } + break; + default: + break; + + } + } + } + return personne; + } + }