Skip to content
Snippets Groups Projects
Commit ae3e8f76 authored by Azurlors's avatar Azurlors
Browse files

Hashmap replacement

parent 805dbe80
No related branches found
No related tags found
No related merge requests found
...@@ -13,8 +13,6 @@ engine.GraphicalInterface <|-- engine.GameEngineGraphical ...@@ -13,8 +13,6 @@ engine.GraphicalInterface <|-- engine.GameEngineGraphical
engine.DrawingPanel <|-- engine.GraphicalInterface engine.DrawingPanel <|-- engine.GraphicalInterface
engine.GamePainter <|-- engine.DrawingPanel engine.GamePainter <|-- engine.DrawingPanel
environment.Coordonnees <|-- entity.Entity environment.Coordonnees <|-- entity.Entity
environment.Coordonnees *-- jeu.Jeu
entity.Character *-- jeu.Jeu
entity.Character <|-- environment.Physique entity.Character <|-- environment.Physique
interface engine.GameController { interface engine.GameController {
...@@ -109,7 +107,7 @@ class jeu.Painter{ ...@@ -109,7 +107,7 @@ class jeu.Painter{
class jeu.Controller { class jeu.Controller {
- boolean isRightPressed, isLeftPressed, isSpacePressed - boolean isRightPressed, isLeftPressed, isSpacePressed
+ <<Create>> Controller() + <<Create>> Controller()
+ ArrayList<Boolean> getCommand() + HashMap<String,Boolean> getCommand()
+ void keyPressed(KeyEvent) + void keyPressed(KeyEvent)
+ void keyReleased(KeyEvent) + void keyReleased(KeyEvent)
+ void keyTyped(KeyEvent) + void keyTyped(KeyEvent)
......
package engine; package engine;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
/** /**
* @author Horatiu Cirstea, Vincent Thomas * @author Horatiu Cirstea, Vincent Thomas
...@@ -16,7 +17,7 @@ public interface Game { ...@@ -16,7 +17,7 @@ public interface Game {
* @param userCmd * @param userCmd
* commande utilisateur * commande utilisateur
*/ */
public void evolve(ArrayList<Boolean> userCmd); public void evolve(HashMap<String,Boolean> userCmd);
/** /**
* @return true si et seulement si le jeu est fini * @return true si et seulement si le jeu est fini
......
...@@ -2,6 +2,7 @@ package engine; ...@@ -2,6 +2,7 @@ package engine;
import java.awt.event.KeyListener; import java.awt.event.KeyListener;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
/** /**
* @author Horatiu Cirstea * @author Horatiu Cirstea
...@@ -17,6 +18,6 @@ public interface GameController extends KeyListener { ...@@ -17,6 +18,6 @@ public interface GameController extends KeyListener {
* *
* @return commande faite par le joueur * @return commande faite par le joueur
*/ */
public ArrayList<Boolean> getCommand(); public HashMap<String,Boolean> getCommand();
} }
package engine; package engine;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
/** /**
* @author Horatiu Cirstea, Vincent Thomas * @author Horatiu Cirstea, Vincent Thomas
...@@ -59,7 +60,7 @@ public class GameEngineGraphical { ...@@ -59,7 +60,7 @@ public class GameEngineGraphical {
// boucle de game // boucle de game
while (!this.game.isFinished()) { while (!this.game.isFinished()) {
// demande controle utilisateur // demande controle utilisateur
ArrayList<Boolean> a = this.gameController.getCommand(); // HashMap<String,Boolean> a = this.gameController.getCommand(); //
// fait evoluer le game // fait evoluer le game
this.game.evolve(a); this.game.evolve(a);
// affiche le game // affiche le game
......
...@@ -4,6 +4,7 @@ import engine.GameController; ...@@ -4,6 +4,7 @@ import engine.GameController;
import java.awt.event.KeyEvent; import java.awt.event.KeyEvent;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
public class Controller implements GameController{ public class Controller implements GameController{
...@@ -23,11 +24,11 @@ public class Controller implements GameController{ ...@@ -23,11 +24,11 @@ public class Controller implements GameController{
* getCommand retourne une liste de booleans sous la forme [isRightPressed, isLeftPressed, isSpacePressed] * getCommand retourne une liste de booleans sous la forme [isRightPressed, isLeftPressed, isSpacePressed]
*/ */
@Override @Override
public ArrayList<Boolean> getCommand() { public HashMap<String,Boolean> getCommand() {
ArrayList<Boolean> cmd = new ArrayList<Boolean>(); HashMap<String,Boolean> cmd = new HashMap<String,Boolean>();
cmd.add(isRightPressed); cmd.put("Right",isRightPressed);
cmd.add(isLeftPressed); cmd.put("Left",isLeftPressed);
cmd.add(isSpacePressed); cmd.put("Jump",isSpacePressed);
return cmd; return cmd;
} }
@Override @Override
......
...@@ -4,6 +4,7 @@ import java.io.BufferedReader; ...@@ -4,6 +4,7 @@ import java.io.BufferedReader;
import java.io.FileReader; import java.io.FileReader;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import entity.Character; import entity.Character;
import engine.Game; import engine.Game;
...@@ -34,7 +35,7 @@ public class Jeu implements Game{ ...@@ -34,7 +35,7 @@ public class Jeu implements Game{
} }
@Override @Override
public void evolve(ArrayList<Boolean> command) { // command est sous la forme list de Boolean qui represente les touches préssées. Voir Controller pour la compositions de cet list. public void evolve(HashMap<String,Boolean> command) { // command est sous la forme list de Boolean qui represente les touches préssées. Voir Controller pour la compositions de cet list.
System.out.println("Execute "+command); System.out.println("Execute "+command);
System.out.println(charac.getCoord().getX()); System.out.println(charac.getCoord().getX());
System.out.println(charac.getCoord().getZ()); System.out.println(charac.getCoord().getZ());
...@@ -44,9 +45,9 @@ public class Jeu implements Game{ ...@@ -44,9 +45,9 @@ public class Jeu implements Game{
comX = 0; comX = 0;
comZ = 0; comZ = 0;
boolean Right = command.get(0); boolean Right = command.get("Right");
boolean Left = command.get(1); boolean Left = command.get("Left");
boolean Jump = command.get(2); boolean Jump = command.get("Jump");
if (Right && Left){} if (Right && Left){}
else if (Right) { else if (Right) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment