static void Main(string[] args) { // Simple Pattern Game myLifeGame = new Game(4, 4); myLifeGame.FlipGridCell(1, 1); myLifeGame.FlipGridCell(1, 2); myLifeGame.FlipGridCell(2, 1); myLifeGame.FlipGridCell(2, 2); myLifeGame.FlipGridCell(2, 3); myLifeGame.FlipGridCell(3, 3); myLifeGame.MaxGenerations = 4; myLifeGame.Init(); // The Period 3 Oscillator pattern //Game myLifeGame = new Game(5, 3); //myLifeGame.ToggleGridCell(0, 1); //myLifeGame.ToggleGridCell(1, 0); //myLifeGame.ToggleGridCell(1, 1); //myLifeGame.ToggleGridCell(1, 2); //myLifeGame.ToggleGridCell(2, 0); //myLifeGame.ToggleGridCell(2, 2); //myLifeGame.ToggleGridCell(3, 0); //myLifeGame.ToggleGridCell(3, 1); //myLifeGame.ToggleGridCell(3, 2); //myLifeGame.ToggleGridCell(4, 1); //myLifeGame.MaxGenerations = 50; //myLifeGame.Init(); Console.ReadKey(); }
public void InitBlinkerPatternTest() { int rows = 3; int columns = 3; Game target = new Game(rows, columns); target.ToggleGridCell(0, 1); target.ToggleGridCell(1, 1); target.ToggleGridCell(2, 1); target.Init(); Assert.AreEqual(target.InputGrid[1, 0].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 1].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 2].IsAlive, true); }
protected override void OnLoad(EventArgs e) { // called upon app init GL.ClearColor(Color.Black); GL.Enable(EnableCap.Texture2D); GL.Hint(HintTarget.PerspectiveCorrectionHint, HintMode.Nicest); Width = 600; Height = 600; game = new Game(); game.screen = new Surface(Width, Height); Sprite.target = game.screen; screenID = game.screen.GenTexture(); game.Init(); }
static void Main(string[] args) { // The period-15 oscillator pattern Game objLifeGame = new Game(1, 10); objLifeGame.ToggleGridCell(0, 0); objLifeGame.ToggleGridCell(0, 1); objLifeGame.ToggleGridCell(0, 2); objLifeGame.ToggleGridCell(0, 3); objLifeGame.ToggleGridCell(0, 4); objLifeGame.ToggleGridCell(0, 5); objLifeGame.ToggleGridCell(0, 6); objLifeGame.ToggleGridCell(0, 7); objLifeGame.ToggleGridCell(0, 8); objLifeGame.ToggleGridCell(0, 9); objLifeGame.MaxGenerations = 10; objLifeGame.Init(); Console.ReadKey(); }
public void InitBlockPatternTest() { int rows = 2; int columns = 2; Game target = new Game(rows, columns); target.ToggleGridCell(0, 0); target.ToggleGridCell(0, 1); target.ToggleGridCell(1, 0); target.ToggleGridCell(1, 1); target.MaxGenerations = 100;// This pattern remains unchanged for infinite generation, testing it for 100 generations target.Init(); Assert.AreEqual(target.InputGrid[0, 0].IsAlive, true); Assert.AreEqual(target.InputGrid[0, 1].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 0].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 1].IsAlive, true); }
public void InitToadPattern2Test() { int rows = 4; int columns = 2; Game target = new Game(rows, columns); target.ToggleGridCell(0, 0); target.ToggleGridCell(1, 0); target.ToggleGridCell(1, 1); target.ToggleGridCell(2, 0); target.ToggleGridCell(2, 1); target.ToggleGridCell(3, 1); target.Init(); Assert.AreEqual(target.InputGrid[0, 1].IsAlive, true); Assert.AreEqual(target.InputGrid[0, 2].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 0].IsAlive, true); Assert.AreEqual(target.InputGrid[2, 3].IsAlive, true); Assert.AreEqual(target.InputGrid[3, 1].IsAlive, true); Assert.AreEqual(target.InputGrid[3, 2].IsAlive, true); }
public void InitQueenBeeShuttleTest() { // The Queen Bee Shuttle pattern int rows = 7; int columns = 4; Game target = new Game(rows, columns); target.ToggleGridCell(0, 0); target.ToggleGridCell(0, 1); target.ToggleGridCell(1, 2); target.ToggleGridCell(2, 3); target.ToggleGridCell(3, 3); target.ToggleGridCell(4, 3); target.ToggleGridCell(5, 2); target.ToggleGridCell(6, 0); target.ToggleGridCell(6, 1); target.MaxGenerations = 100; target.Init(); Assert.AreEqual(target.InputGrid[4, 1].IsAlive, true); Assert.AreEqual(target.InputGrid[4, 2].IsAlive, true); Assert.AreEqual(target.InputGrid[5, 0].IsAlive, true); Assert.AreEqual(target.InputGrid[5, 3].IsAlive, true); Assert.AreEqual(target.InputGrid[6, 1].IsAlive, true); Assert.AreEqual(target.InputGrid[6, 2].IsAlive, true); Assert.AreEqual(target.InputGrid[3, 8].IsAlive, true); Assert.AreEqual(target.InputGrid[4, 7].IsAlive, true); Assert.AreEqual(target.InputGrid[4, 9].IsAlive, true); Assert.AreEqual(target.InputGrid[5, 6].IsAlive, true); Assert.AreEqual(target.InputGrid[5, 10].IsAlive, true); Assert.AreEqual(target.InputGrid[6, 6].IsAlive, true); Assert.AreEqual(target.InputGrid[6, 10].IsAlive, true); Assert.AreEqual(target.InputGrid[7, 7].IsAlive, true); Assert.AreEqual(target.InputGrid[7, 8].IsAlive, true); Assert.AreEqual(target.InputGrid[7, 9].IsAlive, true); Assert.AreEqual(target.InputGrid[9, 7].IsAlive, true); Assert.AreEqual(target.InputGrid[9, 8].IsAlive, true); Assert.AreEqual(target.InputGrid[9, 9].IsAlive, true); Assert.AreEqual(target.InputGrid[10, 6].IsAlive, true); Assert.AreEqual(target.InputGrid[10, 10].IsAlive, true); Assert.AreEqual(target.InputGrid[11, 6].IsAlive, true); Assert.AreEqual(target.InputGrid[11, 10].IsAlive, true); Assert.AreEqual(target.InputGrid[12, 7].IsAlive, true); Assert.AreEqual(target.InputGrid[12, 9].IsAlive, true); Assert.AreEqual(target.InputGrid[13, 8].IsAlive, true); }
public void InitPeriod15OscillatorTest() { // The Queen Bee Shuttle pattern int rows = 1; int columns = 10; Game target = new Game(rows, columns); target.ToggleGridCell(0, 0); target.ToggleGridCell(0, 1); target.ToggleGridCell(0, 2); target.ToggleGridCell(0, 3); target.ToggleGridCell(0, 4); target.ToggleGridCell(0, 5); target.ToggleGridCell(0, 6); target.ToggleGridCell(0, 7); target.ToggleGridCell(0, 8); target.ToggleGridCell(0, 9); target.MaxGenerations = 50; target.Init(); Assert.AreEqual(target.InputGrid[4, 2].IsAlive, true); Assert.AreEqual(target.InputGrid[3, 3].IsAlive, true); Assert.AreEqual(target.InputGrid[4, 3].IsAlive, true); Assert.AreEqual(target.InputGrid[5, 3].IsAlive, true); Assert.AreEqual(target.InputGrid[2, 4].IsAlive, true); Assert.AreEqual(target.InputGrid[3, 4].IsAlive, true); Assert.AreEqual(target.InputGrid[4, 4].IsAlive, true); Assert.AreEqual(target.InputGrid[5, 4].IsAlive, true); Assert.AreEqual(target.InputGrid[6, 4].IsAlive, true); Assert.AreEqual(target.InputGrid[4, 13].IsAlive, true); Assert.AreEqual(target.InputGrid[3, 12].IsAlive, true); Assert.AreEqual(target.InputGrid[4, 12].IsAlive, true); Assert.AreEqual(target.InputGrid[5, 12].IsAlive, true); Assert.AreEqual(target.InputGrid[2, 11].IsAlive, true); Assert.AreEqual(target.InputGrid[3, 11].IsAlive, true); Assert.AreEqual(target.InputGrid[4, 11].IsAlive, true); Assert.AreEqual(target.InputGrid[5, 11].IsAlive, true); Assert.AreEqual(target.InputGrid[6, 11].IsAlive, true); }
public void InitDiamondPatternTest() { int rows = 3; int columns = 4; Game target = new Game(rows, columns); target.ToggleGridCell(0, 1); target.ToggleGridCell(0, 2); target.ToggleGridCell(1, 0); target.ToggleGridCell(1, 3); target.ToggleGridCell(2, 1); target.ToggleGridCell(2, 2); target.MaxGenerations = 50; // This pattern remains unchanged for infinite generation, testing it for 50 generations target.Init(); Assert.AreEqual(target.InputGrid[0, 1].IsAlive, true); Assert.AreEqual(target.InputGrid[0, 2].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 0].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 3].IsAlive, true); Assert.AreEqual(target.InputGrid[2, 1].IsAlive, true); Assert.AreEqual(target.InputGrid[2, 2].IsAlive, true); }
public void InitDefaultValueTest() { int rows = 2; int columns = 2; Game target = new Game(rows, columns); target.Init(); Assert.AreEqual(target.InputGrid[0, 0].IsAlive, false); Assert.AreEqual(target.InputGrid[0, 1].IsAlive, false); Assert.AreEqual(target.InputGrid[1, 0].IsAlive, false); Assert.AreEqual(target.InputGrid[1, 1].IsAlive, false); }
static void Main(string[] args) { // Simple Pattern //Game objLifeGame = new Game(4, 4); //objLifeGame.ToggleGridCell(1, 1); //objLifeGame.ToggleGridCell(1, 2); //objLifeGame.ToggleGridCell(2, 1); //objLifeGame.ToggleGridCell(2, 2); //objLifeGame.ToggleGridCell(2, 3); //objLifeGame.ToggleGridCell(3, 3); //objLifeGame.MaxGenerations = 4; //objLifeGame.Init(); ////Toad Pattern 1 //Game objLifeGame = new Game(2, 4); //objLifeGame.ToggleGridCell(0, 1); //objLifeGame.ToggleGridCell(0, 2); //objLifeGame.ToggleGridCell(0, 3); //objLifeGame.ToggleGridCell(1, 0); //objLifeGame.ToggleGridCell(1, 1); //objLifeGame.ToggleGridCell(1, 2); //objLifeGame.MaxGenerations = 8; //objLifeGame.Init(); ////Toad Pattern 2 //Game objLifeGame = new Game(4, 2); //objLifeGame.ToggleGridCell(0, 0); //objLifeGame.ToggleGridCell(1, 0); //objLifeGame.ToggleGridCell(1, 1); //objLifeGame.ToggleGridCell(2, 0); //objLifeGame.ToggleGridCell(2, 1); //objLifeGame.ToggleGridCell(3, 1); //objLifeGame.MaxGenerations = 100; //objLifeGame.Init(); //Game objLifeGame = new Game(3, 4); //objLifeGame.ToggleGridCell(0, 1); //objLifeGame.ToggleGridCell(0, 2); //objLifeGame.ToggleGridCell(1, 0); //objLifeGame.ToggleGridCell(1, 3); //objLifeGame.ToggleGridCell(2, 1); //objLifeGame.ToggleGridCell(2, 2); //objLifeGame.MaxGenerations = 20; //objLifeGame.Init(); // The Queen Bee Shuttle pattern //Game objLifeGame = new Game(7, 4); //objLifeGame.ToggleGridCell(0, 0); //objLifeGame.ToggleGridCell(0, 1); //objLifeGame.ToggleGridCell(1, 2); //objLifeGame.ToggleGridCell(2, 3); //objLifeGame.ToggleGridCell(3, 3); //objLifeGame.ToggleGridCell(4, 3); //objLifeGame.ToggleGridCell(5, 2); //objLifeGame.ToggleGridCell(6, 0); //objLifeGame.ToggleGridCell(6, 1); //objLifeGame.MaxGenerations = 100; //objLifeGame.Init(); // The Period 3 Oscillator pattern //Game objLifeGame = new Game(5, 3); //objLifeGame.ToggleGridCell(0, 1); //objLifeGame.ToggleGridCell(1, 0); //objLifeGame.ToggleGridCell(1, 1); //objLifeGame.ToggleGridCell(1, 2); //objLifeGame.ToggleGridCell(2, 0); //objLifeGame.ToggleGridCell(2, 2); //objLifeGame.ToggleGridCell(3, 0); //objLifeGame.ToggleGridCell(3, 1); //objLifeGame.ToggleGridCell(3, 2); //objLifeGame.ToggleGridCell(4, 1); //objLifeGame.MaxGenerations = 50; //objLifeGame.Init(); // The period-15 oscillator pattern Game objLifeGame = new Game(1, 10); objLifeGame.ToggleGridCell(0, 0); objLifeGame.ToggleGridCell(0, 1); objLifeGame.ToggleGridCell(0, 2); objLifeGame.ToggleGridCell(0, 3); objLifeGame.ToggleGridCell(0, 4); objLifeGame.ToggleGridCell(0, 5); objLifeGame.ToggleGridCell(0, 6); objLifeGame.ToggleGridCell(0, 7); objLifeGame.ToggleGridCell(0, 8); objLifeGame.ToggleGridCell(0, 9); objLifeGame.MaxGenerations = 50; objLifeGame.Init(); Console.ReadKey(); }
public void InitBoatPatternTest() { int rows = 3; int columns = 3; Game target = new Game(rows, columns); target.FlipGridCell(0, 0); target.FlipGridCell(0, 1); target.FlipGridCell(1, 0); target.FlipGridCell(1, 2); target.FlipGridCell(2, 1); target.Init(); Assert.AreEqual(target.InputGrid[0, 0].IsAlive, true); Assert.AreEqual(target.InputGrid[0, 1].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 0].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 2].IsAlive, true); Assert.AreEqual(target.InputGrid[1, 2].IsAlive, true); Assert.AreEqual(target.InputGrid[2, 1].IsAlive, true); }