From 3e14a5d6cd9175d339952c94956e412c2298f16e Mon Sep 17 00:00:00 2001 From: edani95 <elekdani95@gmail.com> Date: Sun, 15 May 2016 11:40:03 +0200 Subject: [PATCH] Map sequence bug fix --- core/app/Controller.java | 1 + core/app/GameController.java | 5 ++--- core/game/Model.java | 9 +++++++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/core/app/Controller.java b/core/app/Controller.java index 4ec4dab..53d94fa 100644 --- a/core/app/Controller.java +++ b/core/app/Controller.java @@ -157,6 +157,7 @@ public class Controller { */ private boolean initMap(String mapPath) throws IOException { + Model.getInstance().restartMap(); BufferedReader br = new BufferedReader(new FileReader(mapPath)); String command; diff --git a/core/app/GameController.java b/core/app/GameController.java index 8b40156..e1a3ee4 100644 --- a/core/app/GameController.java +++ b/core/app/GameController.java @@ -39,8 +39,6 @@ public class GameController implements PropertyChangeListener{ */ public void startGameProcess( int[] rZPMCount) throws GameRunningException { - Model.getInstance().restartMap(); - int failure = 0; int counter = 0; @@ -217,7 +215,7 @@ public class GameController implements PropertyChangeListener{ } // end of while - + Model.getInstance().removePropertyChangeListener(this); return; // Map finished } @@ -316,6 +314,7 @@ public class GameController implements PropertyChangeListener{ // update only the changed fields int coord = (int)evt.getNewValue(); + System.out.println(coord); int xCoord = coord / map[0].length; int yCoord = coord % map[0].length; Field changedField = (Field)evt.getOldValue(); diff --git a/core/game/Model.java b/core/game/Model.java index 8c1f3b1..21f622f 100644 --- a/core/game/Model.java +++ b/core/game/Model.java @@ -50,6 +50,14 @@ public class Model implements PropertyChangeListener propSupp.addPropertyChangeListener(listener); } } + + public void removePropertyChangeListener(PropertyChangeListener listener) + { + if(listener != null) + { + propSupp.removePropertyChangeListener(listener); + } + } public void setColonel(Player colonel) { @@ -94,6 +102,7 @@ public class Model implements PropertyChangeListener public void restartMap() { + map = new ArrayList<>(); isMapFinished = false; } -- GitLab