From cafe8800eb3eb2eef194224244877d7ba9b4c974 Mon Sep 17 00:00:00 2001 From: "guillaume.bonabau" Date: Wed, 29 May 2024 13:55:02 +0200 Subject: [PATCH] agents now makestep --- src/backend/Sheep.java | 2 +- src/backend/Simulator.java | 18 ++++++++++-------- src/backend/Table.java | 2 +- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/backend/Sheep.java b/src/backend/Sheep.java index b652cc2..9420f05 100644 --- a/src/backend/Sheep.java +++ b/src/backend/Sheep.java @@ -38,7 +38,7 @@ public class Sheep extends Agent { hunger++; } this.moveRandom(); - return hunger>10; + return hunger<10; //condition to be alive } private void moveRandom() { diff --git a/src/backend/Simulator.java b/src/backend/Simulator.java index 0619dd6..0647a65 100644 --- a/src/backend/Simulator.java +++ b/src/backend/Simulator.java @@ -122,17 +122,19 @@ public class Simulator extends Thread { // only modify if sure of what you do // to modify agent behavior, see liveTurn method // in agent classes - for(Agent agent : agents) { + /*for(Agent agent : agents) { ArrayList neighbors = - this.getNeighboringAnimals( - agent.getX(), - agent.getY(), - ANIMAL_AREA_RADIUS); - if(!agent.liveTurn( - neighbors, - this)) { + this.getNeighboringAnimals(agent.getX(), agent.getY(), ANIMAL_AREA_RADIUS); + if(!agent.liveTurn(neighbors,this)) { agents.remove(agent); } + }*/ + + for(int i=0; i neighbors = this.getNeighboringAnimals(agents.get(i).getX(), agents.get(i).getY(), ANIMAL_AREA_RADIUS); + if(!agents.get(i).liveTurn(neighbors,this)) { + agents.remove(i); + } } //then evolution of the field //TODO-INPROGRESS : apply game rule to all cells of the field diff --git a/src/backend/Table.java b/src/backend/Table.java index b8f472e..1abbbec 100644 --- a/src/backend/Table.java +++ b/src/backend/Table.java @@ -8,7 +8,7 @@ public class Table { private ArrayList> table; private Simulator simulator; - //TODO-INPROGRESS : create constructor + //TODO-COMPLETE : create constructor public Table(int height, int width, Simulator tempSimulator) { this.height = height; this.width = width;