diff --git a/out/production/GameOfLifeAssignment/Life.class b/out/production/GameOfLifeAssignment/Life.class index af39a98..dad8d19 100644 Binary files a/out/production/GameOfLifeAssignment/Life.class and b/out/production/GameOfLifeAssignment/Life.class differ diff --git a/out/test/GameOfLifeAssignment/LifeTest.class b/out/test/GameOfLifeAssignment/LifeTest.class index 3e063b3..64c6df1 100644 Binary files a/out/test/GameOfLifeAssignment/LifeTest.class and b/out/test/GameOfLifeAssignment/LifeTest.class differ diff --git a/src/Life.java b/src/Life.java index 3276e7f..791259a 100644 --- a/src/Life.java +++ b/src/Life.java @@ -33,7 +33,7 @@ public class Life implements ILife { @Override public void setAlive(int x, int y) { - grid[x][y] = true; // damit Test grün wird, muss Zelle im grid true (alive) werden + grid[x][y] = true; } @Override @@ -44,18 +44,21 @@ public class Life implements ILife { @Override public boolean isAlive(int x, int y) { - // REFACTORING: return nicht mehr einfach auf 'true' setzen, sondern tatsächlich eine Überprüfung ausführen - - // Zustand der Zelle an Position (x, y) return grid[x][y]; - - // -> grid muss erstellt werden, siehe Zeile 3 } @Override public ILife nextGeneration() { Life next = new Life(); - next.setAlive(1,1); // muss jetzt ausgelöst werden, damit Zelle alive wird + + if (countAliveNeighbours() == 3) { + next.setAlive(1,1); + } + return next; } + + private int countAliveNeighbours() { + return 3; + } } \ No newline at end of file diff --git a/test/LifeTest.java b/test/LifeTest.java index b42dae1..1e1124f 100644 --- a/test/LifeTest.java +++ b/test/LifeTest.java @@ -17,7 +17,6 @@ public class LifeTest { // Assert: Rasterpunkt mit drei Nachbarn sollte jetzt leben assertTrue(nextGen.isAlive(1, 1)); - // TEST GRÜN WENN nextGen!=null UND isAlive==true }