click action name the start

This commit is contained in:
Laure BEL 2024-05-29 13:15:19 +02:00
parent a16b1691d3
commit d866f7c6f1
2 changed files with 25 additions and 23 deletions

View File

@ -29,7 +29,7 @@ public class Sheep extends Agent {
* it can interact with the cells or with other animals
* as you wish
*/
public boolean liveTurn(ArrayList<Agent> neighbors, World world) {
public boolean liveTurn(ArrayList<Agent> neighbors, Simulator world) {
if(world.getCell(x, y)==1) {
world.setCell(x, y, 0);
} else {

View File

@ -31,7 +31,7 @@ public class Simulator extends Thread {
private boolean stopFlag;
private boolean pauseFlag;
private boolean loopingBorder;
private boolean clickActionFlag;
private int clickActionFlag;
private int loopDelay = 150;
private int[][] worldGrid;
private World world; //get the World instance
@ -45,7 +45,7 @@ public class Simulator extends Thread {
//stopFlag=false; //not necessary since i set the state when pressing the button start
pauseFlag=false;
loopingBorder=false;
clickActionFlag=false;
clickActionFlag=0;
agents = new ArrayList<Agent>();
fieldBirthValues = new ArrayList<Integer>();
@ -141,7 +141,7 @@ public class Simulator extends Thread {
// in agent classes
int[][] newWorld = new int[getWidth()][getHeight()];
// int[][] newWorld = new int[getWidth()][getHeight()];
/*ArrayList<Agent> newAgents = new ArrayList<>();
for(Agent agent : agents) {
@ -149,32 +149,29 @@ public class Simulator extends Thread {
this.getNeighboringAnimals(
agent.getX(),
agent.getY(),
ANIMAL_AREA_RADIUS);}
ANIMAL_AREA_RADIUS);
if(!agent.liveTurn(
neighbors,
this)) {
agents.remove(agent);
}
}*/
// Apply Game of Life rules
//for (int x = 0; x < getWidth(); x++) {
// for (int y = 0; y < getHeight(); y++) {
// int aliveNeighbors = countAliveNeighbors(x, y);
// if (world[x][y] == 1) {
// newWorld[x][y] = (aliveNeighbors < 2 || aliveNeighbors > 3) ? 0 : 1;
// } else {
// newWorld[x][y] = (aliveNeighbors == 3) ? 1 : 0;
// }
// }
//}
//world = newWorld;
/*for (int x = 0; x < getWidth(); x++) {
for (int y = 0; y < getHeight(); y++) {
int aliveNeighbors = countAliveNeighbors(x, y);
if (getCell(x,y) == 1) { //
newWorld[x][y] = (aliveNeighbors < 2 || aliveNeighbors > 3) ? 0 : 1;
} else {
newWorld[x][y] = (aliveNeighbors == 3) ? 1 : 0;
}
}
}
this.world = setWorld(newWorld,getWidth(),getHeight()) ;
*/
//then evolution of the field
@ -320,7 +317,7 @@ public class Simulator extends Thread {
ArrayList<String> rule = new ArrayList<>();
for (int i = 0; i < getHeight(); i++) {
StringBuilder lineState = new StringBuilder();
for (int j = 0 ; j < getHeight() ; j++) { // je crois qu'il y a un probleme, il fau+t mettre getWidth je crois
for (int j = 0 ; j < getHeight() ; j++) {
lineState.append(getCell(i, j));
if (j < getWidth() - 1) {
lineState.append(";");
@ -382,6 +379,11 @@ public class Simulator extends Thread {
public String clickActionName() {
// TODO : initially return "sheep" or "cell"
// depending on clickActionFlag
if (clickActionFlag==0) {
return "cell";
}else if (clickActionFlag==1) {
}
return "";
}