From 6de383d5f0da5cab82acb2c917ee81b93be1dc49 Mon Sep 17 00:00:00 2001 From: aminecmi Date: Sun, 8 Feb 2015 09:30:03 +0100 Subject: [PATCH] Tutu --- src/Cases/CaseAbstraite.java | 30 ++------ src/Cases/CaseColore.java | 2 +- src/Cases/utils/Coordonnees.java | 8 -- src/Cases/utils/RandomPointCardinal.java | 2 +- .../ComportementActionSeDeplacer.java | 6 +- src/Composition/EquipeDeFoot.java | 2 +- src/Composition/GroupeAbstrait.java | 4 +- src/Etats/EtatPersonnageAbstrait.java | 8 +- src/Etats/EtatPersonnageKO.java | 2 - .../FabriquePersonnagesAbstraite.java | 2 +- .../FabriquePersonnagesBattleSnow.java | 2 +- .../FabriquePersonnagesBattleZone.java | 2 +- .../FabriquePersonnagesFootball.java | 2 +- .../Scenario/FabriqueScenarioAbstraite.java | 8 +- src/Main.java | 2 +- src/Objets/ObjetAbstrait.java | 14 ++-- src/Observateur/Arbitre.java | 2 +- src/Observateur/SujetObserveAbstrait.java | 4 +- src/Person/Personnage.java | 77 ++++++++++++------- src/Person/PersonnageBattleSnow.java | 6 +- src/Person/PersonnageBattleZone.java | 2 +- src/Person/PersonnageFootball.java | 8 +- src/SimulationJeu.java | 20 ++--- src/utils/Constants.java | 3 - src/utils/InterfaceConsole.java | 2 +- 25 files changed, 110 insertions(+), 110 deletions(-) diff --git a/src/Cases/CaseAbstraite.java b/src/Cases/CaseAbstraite.java index 5b5dcfc..f11f65b 100644 --- a/src/Cases/CaseAbstraite.java +++ b/src/Cases/CaseAbstraite.java @@ -9,15 +9,15 @@ import java.util.HashMap; public abstract class CaseAbstraite { - protected Personnage occupant; - protected ObjetAbstrait objetOccupant; + private Personnage occupant; + private ObjetAbstrait objetOccupant; - HashMap voisins; + private HashMap voisins; - Coordonnees coord; + private Coordonnees coord; - public CaseAbstraite(int vert, int hor) { + CaseAbstraite(int vert, int hor) { coord = new Coordonnees(vert, hor); voisins = new HashMap(); @@ -52,17 +52,9 @@ public abstract class CaseAbstraite { } } - public void ajouterVoisin(PointsCardinaux p, CaseAbstraite c) { - voisins.put(p, c); - } - public void ajouterOccupant(Personnage occ) { this.occupant = occ; } - - public void ajouterObjet(ObjetAbstrait objet) { - this.objetOccupant = objet; - } public Personnage getOccupant() { return occupant; @@ -84,19 +76,7 @@ public abstract class CaseAbstraite { return voisins; } - public void setVoisins(HashMap voisins) { - this.voisins = voisins; - } - public String affichageSpecial() { return " "; } - - public Coordonnees getCoord() { - return coord; - } - - public void setCoord(Coordonnees coord) { - this.coord = coord; - } } \ No newline at end of file diff --git a/src/Cases/CaseColore.java b/src/Cases/CaseColore.java index bc75a1e..756eea6 100644 --- a/src/Cases/CaseColore.java +++ b/src/Cases/CaseColore.java @@ -3,7 +3,7 @@ package Cases; import java.awt.*; public class CaseColore extends CaseAbstraite { - Color couleur; + private Color couleur; public CaseColore(int vert, int hor) { super(vert, hor); diff --git a/src/Cases/utils/Coordonnees.java b/src/Cases/utils/Coordonnees.java index 531d77e..2578dfb 100644 --- a/src/Cases/utils/Coordonnees.java +++ b/src/Cases/utils/Coordonnees.java @@ -13,18 +13,10 @@ public class Coordonnees { return ligne; } - public void setLigne(int ligne) { - this.ligne = ligne; - } - public int getCol() { return col; } - public void setCol(int col) { - this.col = col; - } - @Override public String toString() { return "col " + getCol() + " ligne " + getLigne(); diff --git a/src/Cases/utils/RandomPointCardinal.java b/src/Cases/utils/RandomPointCardinal.java index 3b519b0..6d2a6ac 100644 --- a/src/Cases/utils/RandomPointCardinal.java +++ b/src/Cases/utils/RandomPointCardinal.java @@ -2,7 +2,7 @@ package Cases.utils; import java.util.Random; -public class RandomPointCardinal { +class RandomPointCardinal { private static final Random RND = new Random(); private final E[] values; diff --git a/src/Comportements/ComportementActionSeDeplacer.java b/src/Comportements/ComportementActionSeDeplacer.java index f33af46..c224a2c 100644 --- a/src/Comportements/ComportementActionSeDeplacer.java +++ b/src/Comportements/ComportementActionSeDeplacer.java @@ -9,7 +9,7 @@ import java.util.ArrayList; import java.util.Random; public class ComportementActionSeDeplacer implements ComportementAction { - CaseAbstraite destination; + private CaseAbstraite destination; @Override public void executerAction(Personnage perso, Tuple, ArrayList, ArrayList> t) { @@ -27,7 +27,9 @@ public class ComportementActionSeDeplacer implements ComportementAction { } else { recupererObjets(objs, perso); } - destination.setOccupant(perso); + if (destination != null) { + destination.setOccupant(perso); + } perso.setCaseCourante(destination); } diff --git a/src/Composition/EquipeDeFoot.java b/src/Composition/EquipeDeFoot.java index bca4df4..6a32065 100644 --- a/src/Composition/EquipeDeFoot.java +++ b/src/Composition/EquipeDeFoot.java @@ -6,7 +6,7 @@ import java.util.ArrayList; public class EquipeDeFoot extends GroupeAbstrait { - public String nom; + private final String nom; public EquipeDeFoot(ArrayList list) { super(list); diff --git a/src/Composition/GroupeAbstrait.java b/src/Composition/GroupeAbstrait.java index 82e46dc..92bd889 100644 --- a/src/Composition/GroupeAbstrait.java +++ b/src/Composition/GroupeAbstrait.java @@ -5,9 +5,9 @@ import Person.Personnage; import java.util.ArrayList; public class GroupeAbstrait extends PersonnagesAbstraits { - ArrayList list = new ArrayList(); + private ArrayList list = new ArrayList(); - public GroupeAbstrait(ArrayList list) { + GroupeAbstrait(ArrayList list) { this.list = list; } diff --git a/src/Etats/EtatPersonnageAbstrait.java b/src/Etats/EtatPersonnageAbstrait.java index b8a1d27..f2793ff 100644 --- a/src/Etats/EtatPersonnageAbstrait.java +++ b/src/Etats/EtatPersonnageAbstrait.java @@ -3,11 +3,11 @@ package Etats; import Person.Personnage; public abstract class EtatPersonnageAbstrait { - - protected Personnage joueur; - protected EtatPersonnageAbstrait(Personnage perso){ - this.joueur = perso; + final Personnage joueur; + + EtatPersonnageAbstrait(Personnage perso) { + this.joueur = perso; } protected abstract void execute(); diff --git a/src/Etats/EtatPersonnageKO.java b/src/Etats/EtatPersonnageKO.java index eb1cb6a..998ec17 100644 --- a/src/Etats/EtatPersonnageKO.java +++ b/src/Etats/EtatPersonnageKO.java @@ -3,8 +3,6 @@ package Etats; import Person.Personnage; public class EtatPersonnageKO extends EtatPersonnageAbstrait { - - private int nbTourKO; public EtatPersonnageKO(Personnage perso) { super(perso); diff --git a/src/Fabriques/Personnages/FabriquePersonnagesAbstraite.java b/src/Fabriques/Personnages/FabriquePersonnagesAbstraite.java index 301eaa0..f5575d2 100644 --- a/src/Fabriques/Personnages/FabriquePersonnagesAbstraite.java +++ b/src/Fabriques/Personnages/FabriquePersonnagesAbstraite.java @@ -9,7 +9,7 @@ import java.util.Random; abstract public class FabriquePersonnagesAbstraite { public abstract ArrayList CreerPersonages(CaseAbstraite[][] plateau); - protected void placement(ArrayList personnages, CaseAbstraite[][] plateau) { + void placement(ArrayList personnages, CaseAbstraite[][] plateau) { Random rand = new Random(); for (Personnage p : personnages) { int x = rand.nextInt(plateau.length); diff --git a/src/Fabriques/Personnages/FabriquePersonnagesBattleSnow.java b/src/Fabriques/Personnages/FabriquePersonnagesBattleSnow.java index b5d33bc..b5e0b91 100644 --- a/src/Fabriques/Personnages/FabriquePersonnagesBattleSnow.java +++ b/src/Fabriques/Personnages/FabriquePersonnagesBattleSnow.java @@ -10,8 +10,8 @@ import Person.PersonnageBattleSnow; import java.util.ArrayList; public class FabriquePersonnagesBattleSnow extends FabriquePersonnagesAbstraite { + private final ComportementAction parDefaut = new ComportementActionTirerBouleDeNeige(); public Arbitre a; - protected ComportementAction parDefaut = new ComportementActionTirerBouleDeNeige(); @Override public ArrayList CreerPersonages(CaseAbstraite[][] plateau) { diff --git a/src/Fabriques/Personnages/FabriquePersonnagesBattleZone.java b/src/Fabriques/Personnages/FabriquePersonnagesBattleZone.java index a8a4f32..41fa11a 100644 --- a/src/Fabriques/Personnages/FabriquePersonnagesBattleZone.java +++ b/src/Fabriques/Personnages/FabriquePersonnagesBattleZone.java @@ -9,7 +9,7 @@ import Person.PersonnageBattleZone; import java.util.ArrayList; public class FabriquePersonnagesBattleZone extends FabriquePersonnagesAbstraite { - protected ComportementAction parDefaut = new ComportementActionChangerCouleurCase(); + private final ComportementAction parDefaut = new ComportementActionChangerCouleurCase(); @Override public ArrayList CreerPersonages(CaseAbstraite[][] plateau) { diff --git a/src/Fabriques/Personnages/FabriquePersonnagesFootball.java b/src/Fabriques/Personnages/FabriquePersonnagesFootball.java index 5b30ea6..3fa183b 100644 --- a/src/Fabriques/Personnages/FabriquePersonnagesFootball.java +++ b/src/Fabriques/Personnages/FabriquePersonnagesFootball.java @@ -12,8 +12,8 @@ import Person.PersonnageFootball; import java.util.ArrayList; public class FabriquePersonnagesFootball extends FabriquePersonnagesAbstraite { + private final ComportementAction parDefaut = new ComportementActionTirerBalon(); public Arbitre a; - ComportementAction parDefaut = new ComportementActionTirerBalon(); @Override public ArrayList CreerPersonages(CaseAbstraite[][] plateau) { diff --git a/src/Fabriques/Scenario/FabriqueScenarioAbstraite.java b/src/Fabriques/Scenario/FabriqueScenarioAbstraite.java index 7e17f2c..ecf6ba6 100644 --- a/src/Fabriques/Scenario/FabriqueScenarioAbstraite.java +++ b/src/Fabriques/Scenario/FabriqueScenarioAbstraite.java @@ -10,11 +10,11 @@ import Person.Personnage; import java.util.ArrayList; public abstract class FabriqueScenarioAbstraite { - FabriquePlateauAbstraite fPlateau; - FabriquePersonnagesAbstraite fPersonnages; - FabriqueObjetAbstraite fObjs; + private final FabriquePlateauAbstraite fPlateau; + private final FabriquePersonnagesAbstraite fPersonnages; + private final FabriqueObjetAbstraite fObjs; - public FabriqueScenarioAbstraite(FabriquePlateauAbstraite pl, FabriquePersonnagesAbstraite pr, FabriqueObjetAbstraite fObjs) { + FabriqueScenarioAbstraite(FabriquePlateauAbstraite pl, FabriquePersonnagesAbstraite pr, FabriqueObjetAbstraite fObjs) { this.fPlateau = pl; this.fPersonnages = pr; this.fObjs = fObjs; diff --git a/src/Main.java b/src/Main.java index 010e95f..99de239 100644 --- a/src/Main.java +++ b/src/Main.java @@ -3,7 +3,7 @@ import Fabriques.Personnages.FabriquePersonnagesBattleZone; import Fabriques.Plateau.FabriquePlateauBattleZone; import Fabriques.Scenario.FabriqueScenarioBattleZone; -public class Main { +class Main { public static void main(String[] args){ SimulationJeu s = new SimulationJeu(new FabriqueScenarioBattleZone(new FabriquePlateauBattleZone(), new FabriquePersonnagesBattleZone(), new FabriqueObjetBattleZone())); s.lancerJeu(); diff --git a/src/Objets/ObjetAbstrait.java b/src/Objets/ObjetAbstrait.java index 03e33ab..b3bc25f 100644 --- a/src/Objets/ObjetAbstrait.java +++ b/src/Objets/ObjetAbstrait.java @@ -3,11 +3,11 @@ package Objets; import Cases.CaseAbstraite; public abstract class ObjetAbstrait { - protected CaseAbstraite caseCourante; - protected String nom; - protected double pointsDeVie; - protected double force; - protected double vitesse; + private CaseAbstraite caseCourante; + private String nom; + private double pointsDeVie; + private double force; + private double vitesse; protected ObjetAbstrait(String name) { this.nom = name; @@ -17,8 +17,8 @@ public abstract class ObjetAbstrait { this.caseCourante = null; } - protected ObjetAbstrait(String name, double lifePoint, double strength, double speed) { - this.nom = name; + ObjetAbstrait(String name, double lifePoint, double strength, double speed) { + this.nom = name; this.pointsDeVie=lifePoint; this.force=strength; this.vitesse=speed; diff --git a/src/Observateur/Arbitre.java b/src/Observateur/Arbitre.java index a99bf60..f583288 100644 --- a/src/Observateur/Arbitre.java +++ b/src/Observateur/Arbitre.java @@ -2,7 +2,7 @@ package Observateur; public class Arbitre extends SujetObserveAbstrait { - int iter = 10; + private int iter = 10; @Override public void update() { diff --git a/src/Observateur/SujetObserveAbstrait.java b/src/Observateur/SujetObserveAbstrait.java index 427ea76..d7e2b1e 100644 --- a/src/Observateur/SujetObserveAbstrait.java +++ b/src/Observateur/SujetObserveAbstrait.java @@ -4,9 +4,9 @@ import java.util.ArrayList; public abstract class SujetObserveAbstrait { - ArrayList liste; + final ArrayList liste; - protected SujetObserveAbstrait() { + SujetObserveAbstrait() { liste = new ArrayList(); } diff --git a/src/Person/Personnage.java b/src/Person/Personnage.java index 363ec17..1d417ff 100644 --- a/src/Person/Personnage.java +++ b/src/Person/Personnage.java @@ -19,17 +19,17 @@ import java.util.HashSet; public class Personnage extends PersonnagesAbstraits implements ObservateurAbstrait { - protected CaseAbstraite caseCourante; - protected ObjetAbstrait objet; - protected String nom; - protected String groupe; - protected double pointsDeVie; - protected double force; - protected double vitesse; - protected double portee; - protected EAction action; - protected ComportementAction Action; - HashSet voisinsActuels = new HashSet(); + private final String nom; + private final double force; + private final double vitesse; + private final double portee; + private CaseAbstraite caseCourante; + private ObjetAbstrait objet; + private String groupe; + private double pointsDeVie; + private EAction action; + private ComportementAction Action; + private HashSet voisinsActuels = new HashSet(); private EtatPersonnageAbstrait etatCourant; private HashMap voisins; @@ -46,7 +46,7 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr } - protected Personnage(String name, double lifePoint, double strength, double speed, int portee, ComportementAction a) { + Personnage(String name, double lifePoint, double strength, double speed, int portee, ComportementAction a) { this.nom = name; this.pointsDeVie=lifePoint; this.force=strength; @@ -90,7 +90,7 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr Action.executerAction(this, t); } - public HashSet voisinsPortee(CaseAbstraite c, int rayon) { + HashSet voisinsPortee(CaseAbstraite c, int rayon) { HashMap v = c.getVoisins(); if ((rayon + 1) == this.getPortee()) { voisinsActuels.addAll(c.getVoisins().values()); @@ -103,7 +103,7 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr return voisinsActuels; } - public ArrayList rechercheObjetProche(HashSet voisinsDesVoisins) { + ArrayList rechercheObjetProche(HashSet voisinsDesVoisins) { ArrayList objetsVoisins = new ArrayList(); for (CaseAbstraite c : voisinsDesVoisins) { @@ -114,14 +114,14 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr return objetsVoisins; } - protected HashSet getCaseAbstraitesForPortee() { + HashSet getCaseAbstraitesForPortee() { HashSet voisins = voisinsPortee(this.caseCourante, 0); voisins.remove(getCaseCourante()); return voisins; } - public ArrayList rechercheJoueur(HashSet voisinsDesVoisins) { + ArrayList rechercheJoueur(HashSet voisinsDesVoisins) { ArrayList personnes = new ArrayList(); for (CaseAbstraite c : voisinsDesVoisins) { if (c.getOccupant() != null) { @@ -132,12 +132,7 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr return personnes; } - public void mediationConflits() { - - - } - - public void ChangerAction(EAction nouvelAction) { + void ChangerAction(EAction nouvelAction) { switch (nouvelAction) { case ChangerCouleurCase: @@ -153,7 +148,7 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr Action = new ComportementActionTirerBouleDeNeige(); break; case Rien: - Action = new ComportementActionTirerBouleDeNeige(); + Action = new Rien(); break; default: break; @@ -163,7 +158,7 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr this.setAction(nouvelAction); } - public ObjetAbstrait getObjet() { + ObjetAbstrait getObjet() { return objet; } @@ -179,7 +174,11 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr return bonus + pointsDeVie; } - public double getForce() { + void setPointsDeVie(double pointsDeVie) { + this.pointsDeVie = pointsDeVie; + } + + double getForce() { double bonus = 0; if (getObjet() != null) { bonus = getObjet().getForce(); @@ -199,7 +198,6 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr return groupe; } - public void setGroupe(String equipe) { groupe = equipe; } @@ -218,7 +216,7 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr } - public double getPortee() { + double getPortee() { return portee; } @@ -226,7 +224,7 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr return action; } - public void setAction(EAction action) { + void setAction(EAction action) { this.action = action; } @@ -242,4 +240,27 @@ public class Personnage extends PersonnagesAbstraits implements ObservateurAbstr public void update() { this.ChangerAction(EAction.Rien); } + + public void afficherInfos() { + System.out.println(this.toString()); + } + + @Override + public String toString() { + return "Personnage{" + + "caseCourante=" + caseCourante + + ", objet=" + objet + + ", nom='" + nom + '\'' + + ", groupe='" + groupe + '\'' + + ", pointsDeVie=" + pointsDeVie + + ", force=" + force + + ", vitesse=" + vitesse + + ", portee=" + portee + + ", action=" + action + + ", Action=" + Action + + ", voisinsActuels=" + voisinsActuels + + ", etatCourant=" + etatCourant + + ", voisins=" + voisins + + '}'; + } } diff --git a/src/Person/PersonnageBattleSnow.java b/src/Person/PersonnageBattleSnow.java index ca9b998..40f4e30 100644 --- a/src/Person/PersonnageBattleSnow.java +++ b/src/Person/PersonnageBattleSnow.java @@ -10,7 +10,11 @@ public class PersonnageBattleSnow extends Personnage{ } public void attack(PersonnageBattleSnow cible) { + double force = this.getForce(); + cible.recevoirAttack(force); + } - + private void recevoirAttack(double force) { + this.setPointsDeVie(this.getPointsDeVie() - force); } } diff --git a/src/Person/PersonnageBattleZone.java b/src/Person/PersonnageBattleZone.java index cfb7fb3..f2f68c0 100644 --- a/src/Person/PersonnageBattleZone.java +++ b/src/Person/PersonnageBattleZone.java @@ -6,7 +6,7 @@ import java.awt.*; import java.util.Random; public class PersonnageBattleZone extends Personnage { - Color couleur; + private Color couleur; public PersonnageBattleZone(String name, double lifePoint, double strength, double speed, int portee, ComportementAction parDefaut) { super(name, lifePoint, strength, speed, portee, parDefaut); diff --git a/src/Person/PersonnageFootball.java b/src/Person/PersonnageFootball.java index b6d01ee..fa7657b 100644 --- a/src/Person/PersonnageFootball.java +++ b/src/Person/PersonnageFootball.java @@ -7,10 +7,11 @@ import Composition.GroupeAbstrait; import Objets.ObjetBallon; import java.util.ArrayList; +import java.util.Random; public class PersonnageFootball extends Personnage { - public EquipeDeFoot equipe; + private EquipeDeFoot equipe; public PersonnageFootball(String name, double lifePoint, double strength, double speed, int portee, ComportementAction parDefaut) { super(name, lifePoint, strength, speed, portee, parDefaut); @@ -27,6 +28,11 @@ public class PersonnageFootball extends Personnage { } public void lancerBallon(ObjetBallon objetOccupant, ArrayList cases) { + int size = cases.size(); + int item = new Random().nextInt(size); + CaseAbstraite dest = cases.get(item); + objetOccupant.setCaseCourante(dest); + dest.setObjetOccupant(objetOccupant); } } diff --git a/src/SimulationJeu.java b/src/SimulationJeu.java index 22e08f1..134d03b 100644 --- a/src/SimulationJeu.java +++ b/src/SimulationJeu.java @@ -8,12 +8,12 @@ import java.util.ArrayList; import java.util.Scanner; -public class SimulationJeu { - ArrayList personnages; - CaseAbstraite[][] plateau; - FabriqueScenarioAbstraite f; - InterfaceConsole intefaceC; - Arbitre a; +class SimulationJeu { + private final CaseAbstraite[][] plateau; + private final FabriqueScenarioAbstraite f; + private final InterfaceConsole intefaceC; + private final Arbitre a; + private ArrayList personnages; public SimulationJeu(FabriqueScenarioAbstraite fb) { f = fb; @@ -29,14 +29,14 @@ public class SimulationJeu { a = new Arbitre(); } - public void afficheTous() { + void afficheTous() { System.out.println(""); intefaceC.afficherPlateau(); } - public void recupererInformations() { + void recupererInformations() { for (Personnage p : personnages) { - + p.afficherInfos(); } } @@ -59,7 +59,7 @@ public class SimulationJeu { // bloquer le tour jusqu'a toucher une touche du clavier. Scanner s = new Scanner(System.in); String choix = s.nextLine(); - if (choix == "s") { + if (choix.equals("s")) { continuer = false; } } diff --git a/src/utils/Constants.java b/src/utils/Constants.java index 06039f7..7b21a24 100644 --- a/src/utils/Constants.java +++ b/src/utils/Constants.java @@ -2,9 +2,6 @@ package utils; public class Constants { - /** Define the duration for a football game (in ms) */ - public static final int TIME_FOOTBALL_GAME = 100000; // 100 secondes - public static final int TABLE_HEIGHT = 10; public static final int TABLE_WIDTH = 10; diff --git a/src/utils/InterfaceConsole.java b/src/utils/InterfaceConsole.java index 65dc542..6dbd85b 100644 --- a/src/utils/InterfaceConsole.java +++ b/src/utils/InterfaceConsole.java @@ -3,7 +3,7 @@ package utils; import Cases.CaseAbstraite; public class InterfaceConsole { - CaseAbstraite[][] plateau; + private final CaseAbstraite[][] plateau; public InterfaceConsole(CaseAbstraite[][] cases) { plateau = cases;