Merge branch 'master' of https://gitarero.ecam.fr/laure.bel/OOP_F3_Project.git
This commit is contained in:
commit
17c204a812
|
|
@ -10,20 +10,12 @@ public class Rules {
|
|||
|
||||
public Rules() {
|
||||
|
||||
survivalRulesArray = new int[0];
|
||||
birthRulesArray = new int[0];
|
||||
//survivalRulesArray = new int[0];
|
||||
//birthRulesArray = new int[0];
|
||||
}
|
||||
//initialize my arrays to empty
|
||||
|
||||
public int[] getBirthRulesArray() {
|
||||
return this.birthRulesArray;
|
||||
|
||||
}
|
||||
|
||||
public int[] getSurvivalRulesArray() {
|
||||
return this.survivalRulesArray;
|
||||
|
||||
}
|
||||
|
||||
public void loadRule(ArrayList<String> row) {
|
||||
String surviveRulesRow = row.get(0);
|
||||
|
|
@ -42,14 +34,14 @@ public class Rules {
|
|||
|
||||
}else {
|
||||
for (int x = 0; x < surviveCells.length; x++) {
|
||||
String elem = surviveCells[x];
|
||||
int value = Integer.parseInt(elem);
|
||||
String eleme = surviveCells[x];
|
||||
int value = Integer.parseInt(eleme);
|
||||
survivalRulesArray[x] = value;
|
||||
}
|
||||
//determines the number of alive neighboring cells needed to survive, and places them in the survivalRulesArray
|
||||
for (int x = 0; x < birthCells.length; x++) {
|
||||
String elem = birthCells[x];
|
||||
int value = Integer.parseInt(elem);
|
||||
String elemee = birthCells[x];
|
||||
int value = Integer.parseInt(elemee);
|
||||
birthRulesArray[x] = value;
|
||||
}
|
||||
//determines the number of alive neighboring cells needed to birth, and places them in the birthRules list
|
||||
|
|
@ -59,4 +51,14 @@ public class Rules {
|
|||
|
||||
}
|
||||
|
||||
public int[] getBirthRulesArray() {
|
||||
return this.birthRulesArray;
|
||||
|
||||
}
|
||||
|
||||
public int[] getSurvivalRulesArray() {
|
||||
return this.survivalRulesArray;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,8 +36,12 @@ public class Sheep extends Agent {
|
|||
hunger++;
|
||||
}
|
||||
this.moveRandom();
|
||||
if (hunger<=10) {
|
||||
return true;
|
||||
}else {
|
||||
return hunger>10;
|
||||
}
|
||||
}
|
||||
|
||||
private void moveRandom() {
|
||||
int direction = rand.nextInt(4);
|
||||
|
|
|
|||
|
|
@ -16,8 +16,8 @@ public class Simulator extends Thread {
|
|||
private MyInterface mjf;
|
||||
public Rules rules;
|
||||
|
||||
//private final int COL_NUM = 100;
|
||||
//private final int LINE_NUM = 100;
|
||||
private final int COL_NUM = 100;
|
||||
private final int LINE_NUM = 100;
|
||||
private final int LIFE_TYPE_NUM = 4;
|
||||
//Conway Radius : 1
|
||||
private final int LIFE_AREA_RADIUS = 1;
|
||||
|
|
@ -66,11 +66,11 @@ public class Simulator extends Thread {
|
|||
}
|
||||
|
||||
public int getWidth() {
|
||||
return world.getWidth();
|
||||
return this.getWidth();
|
||||
}
|
||||
|
||||
public int getHeight() {
|
||||
return world.getHeight();
|
||||
return this.getHeight();
|
||||
}
|
||||
|
||||
public World getWorld(){
|
||||
|
|
@ -158,28 +158,23 @@ public class Simulator extends Thread {
|
|||
// in agent classes
|
||||
|
||||
|
||||
/*ArrayList<Agent> newAgents = new ArrayList<>();
|
||||
ArrayList<Agent> newAgents = new ArrayList<>();
|
||||
for(Agent agent : agents) {
|
||||
ArrayList<Agent> neighbors =
|
||||
this.getNeighboringAnimals(
|
||||
agent.getX(),
|
||||
agent.getY(),
|
||||
ANIMAL_AREA_RADIUS);}
|
||||
if(!agent.liveTurn(
|
||||
neighbors,
|
||||
this)) {
|
||||
/*ArrayList<Agent> neighbors =this.getNeighboringAnimals(agent.getX(),agent.getY(),ANIMAL_AREA_RADIUS);}
|
||||
*/
|
||||
System.out.println("makeStep Called");
|
||||
if(!agent.liveTurn(this.getNeighboringAnimals(agent.getX(),agent.getY(),ANIMAL_AREA_RADIUS),world)) {
|
||||
agents.remove(agent);
|
||||
}*/
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int[][] nextWorld = new int[getWidth()][getHeight()];
|
||||
/*int[][] nextWorld = new int[getWidth()][getHeight()];
|
||||
|
||||
for (int x = 0; x < getWidth(); x++) {
|
||||
for (int y = 0; y < getHeight(); y++) {
|
||||
int aliveNeighbors = countAliveNeighbors(x, y);
|
||||
if (world.getCell(x, y) == 1) {
|
||||
nextWorld[x][y] = 1;
|
||||
//survives(aliveNeighbors) ? 1 : 0;
|
||||
nextWorld[x][y] = survives(aliveNeighbors) ? 1 : 0;
|
||||
} else {
|
||||
nextWorld[x][y] = bornes(aliveNeighbors) ? 1 : 0;
|
||||
}
|
||||
|
|
@ -189,7 +184,7 @@ public class Simulator extends Thread {
|
|||
world.setWorld(nextWorld, getWidth(), getHeight());
|
||||
}
|
||||
|
||||
|
||||
*/
|
||||
|
||||
//then evolution of the field
|
||||
|
||||
|
|
@ -210,10 +205,7 @@ public class Simulator extends Thread {
|
|||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* leave this as is
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@ package backend;
|
|||
import java.util.Random;
|
||||
|
||||
public class World {
|
||||
|
||||
private int width;
|
||||
private int height;
|
||||
Simulator simulator;
|
||||
private int width = simulator.getWidth();
|
||||
private int height = simulator.getHeight();
|
||||
private int[][] world;
|
||||
|
||||
public World(int width, int height) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue