当前位置: 首页>>代码示例>>C#>>正文


C# World.Tick方法代码示例

本文整理汇总了C#中World.Tick方法的典型用法代码示例。如果您正苦于以下问题:C# World.Tick方法的具体用法?C# World.Tick怎么用?C# World.Tick使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在World的用法示例。


在下文中一共展示了World.Tick方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: AnyLiveCellWithFewerThanTwoLiveNeighboursDies

        public void AnyLiveCellWithFewerThanTwoLiveNeighboursDies()
        {
            var world = new World(4, 4);
            world.BringToLife(1, 1);
            world.Tick();

            for (var i = 1; i <= 4; i++)
                for (var j = 1; j <= 4; j++)
                    Assert.IsFalse(world.IsAlive(i, j));
        }
开发者ID:dom97,项目名称:TheGameOfLife,代码行数:10,代码来源:WorldTests.cs

示例2: AnyLiveCellWithTwoLiveNeighborsLives

        public void AnyLiveCellWithTwoLiveNeighborsLives()
        {
            var world = new World(4, 4);
            world.BringToLife(1, 1);
            world.BringToLife(2, 1);
            world.BringToLife(1, 2);
            world.Tick();

            Assert.IsTrue(world.IsAlive(1, 1));
            Assert.IsTrue(world.IsAlive(2, 1));
            Assert.IsTrue(world.IsAlive(1, 2));
        }
开发者ID:dom97,项目名称:TheGameOfLife,代码行数:12,代码来源:WorldTests.cs

示例3: AnyDeadCellWithExactlyThreeLiveNeighborsBecomesALiveCell

        public void AnyDeadCellWithExactlyThreeLiveNeighborsBecomesALiveCell()
        {
            var world = new World(4, 4);
            world.BringToLife(1, 1);
            world.BringToLife(1, 2);
            world.BringToLife(2, 3);
            world.Tick();

            Assert.IsTrue(world.IsAlive(2, 2));
            Assert.IsFalse(world.IsAlive(1, 1));
            Assert.IsTrue(world.IsAlive(1, 2));
            Assert.IsFalse(world.IsAlive(2, 3));
        }
开发者ID:dom97,项目名称:TheGameOfLife,代码行数:13,代码来源:WorldTests.cs

示例4: should_kill_any_live_cell_with_fewer_than_two_live_neighbors

        public void should_kill_any_live_cell_with_fewer_than_two_live_neighbors()
        {
            var cells = new List<Cell>
                        {
                            new Cell(Position.At(6, 6), State.Alive),
                            new Cell(Position.At(6, 7), State.Alive)
                        };
            var rules = new List<IRule> { new LiveCellsWithLessThanTwoLiveNeighborsDie() };
            var currentWorld = new World (cells, rules);

            var newWorld = currentWorld.Tick();

            newWorld.GetCellAt(Position.At(6, 6)).State.Should().Be(State.Dead);
            newWorld.GetCellAt(Position.At(6, 7)).State.Should().Be(State.Dead);
        }
开发者ID:safwank,项目名称:GameOfLifeCSharp,代码行数:15,代码来源:world.cs

示例5: AnyLiveCellWithMoreThanThreeLiveNeighborsDies

        public void AnyLiveCellWithMoreThanThreeLiveNeighborsDies()
        {
            var world = new World(4, 4);
            world.BringToLife(2, 2);
            world.BringToLife(1, 1);
            world.BringToLife(1, 2);
            world.BringToLife(2, 3);
            world.BringToLife(3, 2);
            world.Tick();

            Assert.IsFalse(world.IsAlive(2, 2));
            Assert.IsTrue(world.IsAlive(1, 1));
            Assert.IsTrue(world.IsAlive(1, 2));
            Assert.IsTrue(world.IsAlive(2, 3));
            Assert.IsTrue(world.IsAlive(3, 2));
        }
开发者ID:dom97,项目名称:TheGameOfLife,代码行数:16,代码来源:WorldTests.cs

示例6: should_keep_any_live_cell_with_two_or_three_life_neighbors

        public void should_keep_any_live_cell_with_two_or_three_life_neighbors()
        {
            var cells = new List<Cell>
            {
                new Cell(Position.At(6, 6), State.Alive),
                new Cell(Position.At(6, 7), State.Alive),
                new Cell(Position.At(7, 6), State.Alive),
            };
            var rules = new List<IRule> { new LiveCellsWithTwoOrThreeLiveNeighborsLiveOn() };
            var currentWorld = new World (cells, rules);

            var newWorld = currentWorld.Tick();

            newWorld.GetCellAt(Position.At(6, 6)).State.Should().Be(State.Alive);
            newWorld.GetCellAt(Position.At(6, 7)).State.Should().Be(State.Alive);
            newWorld.GetCellAt(Position.At(7, 6)).State.Should().Be(State.Alive);
        }
开发者ID:safwank,项目名称:GameOfLifeCSharp,代码行数:17,代码来源:world.cs

示例7: should_kill_any_live_cell_with_more_than_three_live_neighbors

        public void should_kill_any_live_cell_with_more_than_three_live_neighbors()
        {
            var cells = new List<Cell>
            {
                new Cell(Position.At(6, 6), State.Alive),
                new Cell(Position.At(6, 7), State.Alive),
                new Cell(Position.At(7, 6), State.Alive),
                new Cell(Position.At(7, 7), State.Alive),
                new Cell(Position.At(7, 8), State.Alive),
                new Cell(Position.At(8, 6), State.Alive),
            };
            var rules = new List<IRule> { new LiveCellsWithMoreThanThreeLiveNeighborsDie() };
            var currentWorld = new World (cells, rules);

            var newWorld = currentWorld.Tick();

            newWorld.GetCellAt(Position.At(6, 6)).State.Should().Be(State.Alive);
            newWorld.GetCellAt(Position.At(6, 7)).State.Should().Be(State.Dead);
            newWorld.GetCellAt(Position.At(7, 6)).State.Should().Be(State.Dead);
            newWorld.GetCellAt(Position.At(7, 7)).State.Should().Be(State.Dead);
            newWorld.GetCellAt(Position.At(7, 8)).State.Should().Be(State.Alive);
            newWorld.GetCellAt(Position.At(8, 6)).State.Should().Be(State.Alive);
        }
开发者ID:safwank,项目名称:GameOfLifeCSharp,代码行数:23,代码来源:world.cs

示例8: should_reincarnate_any_dead_cell_with_exactly_three_live_neighbors

        public void should_reincarnate_any_dead_cell_with_exactly_three_live_neighbors()
        {
            var cells = new List<Cell>
            {
                new Cell(Position.At(6, 6), State.Alive),
                new Cell(Position.At(6, 7), State.Alive),
                new Cell(Position.At(7, 6), State.Dead),
                new Cell(Position.At(7, 7), State.Alive)
            };
            var rules = new List<IRule> { new DeadCellsWithThreeLiveNeighborsBecomeAlive() };
            var currentWorld = new World (cells, rules);

            var newWorld = currentWorld.Tick();

            newWorld.GetCellAt(Position.At(6, 6)).State.Should().Be(State.Alive);
            newWorld.GetCellAt(Position.At(6, 7)).State.Should().Be(State.Alive);
            newWorld.GetCellAt(Position.At(7, 6)).State.Should().Be(State.Alive);
            newWorld.GetCellAt(Position.At(7, 7)).State.Should().Be(State.Alive);
        }
开发者ID:safwank,项目名称:GameOfLifeCSharp,代码行数:19,代码来源:world.cs


注:本文中的World.Tick方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。