diff --git a/ressources/Rule/BlobRule.csv b/ressources/Rule/BlobRule.csv deleted file mode 100644 index 10f61a6..0000000 --- a/ressources/Rule/BlobRule.csv +++ /dev/null @@ -1,2 +0,0 @@ -1;3;5;8 -3;5;7; diff --git a/ressources/Rule/BlobRule.json b/ressources/Rule/BlobRule.json new file mode 100644 index 0000000..be22af7 --- /dev/null +++ b/ressources/Rule/BlobRule.json @@ -0,0 +1,17 @@ +[{"cell": { + "value" : 1, + "color" : [255,255,66], + "conditionCountNear" : [3,5,7], + "conditionHighestNear" : [], + "ifValue" : 1, + "elseValue" : 0 +}}, +{"cell": { + "value" : 0, + "color" : [97, 94, 58], + "conditionCountNear" : [1,3,5,8], + "conditionHighestNear" : [], + "ifValue" : 1, + "elseValue" : 0 +}} +] \ No newline at end of file diff --git a/ressources/Rule/ConwayRule.csv b/ressources/Rule/ConwayRule.csv deleted file mode 100644 index 3563b76..0000000 --- a/ressources/Rule/ConwayRule.csv +++ /dev/null @@ -1,2 +0,0 @@ -2;3 -3 \ No newline at end of file diff --git a/conwayRule.json b/ressources/Rule/conwayRule.json similarity index 100% rename from conwayRule.json rename to ressources/Rule/conwayRule.json diff --git a/ressources/Rule/cutsomrule.csv b/ressources/Rule/cutsomrule.csv deleted file mode 100644 index e16241f..0000000 --- a/ressources/Rule/cutsomrule.csv +++ /dev/null @@ -1,2 +0,0 @@ -0;1;2;3;4 -3 \ No newline at end of file diff --git a/gasRule.json b/ressources/Rule/gasRule.json similarity index 100% rename from gasRule.json rename to ressources/Rule/gasRule.json diff --git a/src/backend/Simulator.java b/src/backend/Simulator.java index eb987e4..451ccef 100644 --- a/src/backend/Simulator.java +++ b/src/backend/Simulator.java @@ -1,3 +1,4 @@ + package backend; import java.awt.Color; import java.io.FileNotFoundException; @@ -82,7 +83,7 @@ public class Simulator extends Thread { //Default rule : Survive always, birth never - loadRule("OOP_F1_Project\\conwayRule.json"); + loadRule("ressources\\Rule\\conwayRule.json"); } @@ -99,6 +100,10 @@ public class Simulator extends Thread { return colorArrayList; } + public ArrayList> getColorArrayList(){ + return colorArrayList; + } + //Should probably stay as is public void run() { int stepCount=0; diff --git a/src/windowInterface/MyInterface.java b/src/windowInterface/MyInterface.java index d58cc85..60dbdf8 100644 --- a/src/windowInterface/MyInterface.java +++ b/src/windowInterface/MyInterface.java @@ -66,6 +66,14 @@ public class MyInterface extends JFrame { panelRight.setLayout(new GridLayout(12,1)); contentPane.add(panelRight, BorderLayout.EAST); + JButton btnStop = new JButton("Stop/Reset"); + btnStop.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent arg0) { + stopSimu(); + } + }); + panelTop.add(btnStop); + JButton btnGo = new JButton("Start/Pause"); btnGo.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { @@ -133,14 +141,6 @@ public class MyInterface extends JFrame { } }); panelRight.add(btnLoadRule); - - JButton btnSaveRule = new JButton("Save Rule"); - btnSaveRule.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent arg0) { - clicSaveRuleToFileButton(); - } - }); - panelRight.add(btnSaveRule); JButton btnLoadAgents = new JButton("Load Agents"); btnLoadAgents.addActionListener(new ActionListener() { @@ -205,6 +205,12 @@ public class MyInterface extends JFrame { panelRight.add(clickLabel); clickLabel.setText("click : " + mySimu.clickActionName()); } + public void stopSimu() { + mySimu.togglePause(); + mySimu = new Simulator(this); + panelDraw.setSimu(mySimu); + panelDraw.repaint(); + } public void setStepBanner(String s) { stepLabel.setText(s); @@ -350,14 +356,6 @@ public class MyInterface extends JFrame { } } - public void clicSaveRuleToFileButton() { - String fileName=SelectFile(); - if (fileName.length()>0) { - ArrayList content = mySimu.getRule(); - writeFile(fileName, (String[]) content.toArray()); - } - } - public void clicSaveAgentsToFileButton() { String fileName=SelectFile(); if (fileName.length()>0) {