Implement Conway's Game of Life: http://en.wikipedia.org/wiki/Conway%27s_Game_of_Life#Rules
View code on GitHub
Inheritance Hierarchy
DeltaEngine.Entities Entity
DeltaEngine.Entities DrawableEntity
DeltaEngine.Rendering2D Entity2D
GameOfLife GameOfLife
Namespace: GameOfLife
Assembly: GameOfLife (in GameOfLife.exe) Version: 1.1.1.0 (1.1.1)
Syntax
The GameOfLife type exposes the following members.
Constructors
Name | Description | |
---|---|---|
GameOfLife | Initializes a new instance of the GameOfLife class |
Methods
Extension Methods
Name | Description | |
---|---|---|
AffixToPhysics | (Defined by Entity2DPhysicsExtensions.) | |
StartBouncingOffScreenEdges | (Defined by Entity2DExtensions.) | |
StartFalling | (Defined by Entity2DExtensions.) | |
StartMoving | (Defined by Entity2DExtensions.) | |
StartRotating | (Defined by Entity2DExtensions.) |
Fields
Name | Description | |
---|---|---|
components | (Inherited from Entity.) | |
lastTickLerpComponents |
Each element can either be a Lerp, a Lerp List or an array of Lerp objects.
View code on GitHub (Inherited from DrawableEntity.) |
Properties
Name | Description | |
---|---|---|
Alpha | (Inherited from Entity2D.) | |
Center | (Inherited from Entity2D.) | |
Color | (Inherited from Entity2D.) | |
DidFootprintChange | (Inherited from Entity2D.) | |
DrawArea | (Inherited from Entity2D.) | |
GameGrid | ||
Generation | ||
IsActive | (Inherited from DrawableEntity.) | |
IsPauseable | (Inherited from Entity.) | |
IsVisible | (Inherited from DrawableEntity.) | |
LastColor | (Inherited from Entity2D.) | |
LastDrawArea | (Inherited from Entity2D.) | |
NumberOfComponents | (Inherited from Entity.) | |
Population | ||
RenderLayer | (Inherited from DrawableEntity.) | |
Rotation | (Inherited from Entity2D.) | |
RotationCenter | (Inherited from Entity2D.) | |
Size | (Inherited from Entity2D.) | |
TopLeft | (Inherited from Entity2D.) | |
UpdatePriority | (Inherited from Entity.) |
Remarks
Examples
[Test, CloseAfterFirstFrame] public void GridShouldHaveRightSize() { var gridSize = new Size(5); Assert.AreEqual(gridSize, gameOfLife.GameGrid.Dimension); }
[Test, CloseAfterFirstFrame] public void NewCreatedGridShouldHaveJustDeadCells() { Assert.AreEqual(0, gameOfLife.Population); }
[Test, CloseAfterFirstFrame] public void RunningSimulationIncrementsGenerationByOne() { Assert.AreEqual(0, gameOfLife.Generation); gameOfLife.SimulateNextGeneration(); Assert.AreEqual(1, gameOfLife.Generation); }
See Also