本文整理汇总了C#中Board.AddElement方法的典型用法代码示例。如果您正苦于以下问题:C# Board.AddElement方法的具体用法?C# Board.AddElement怎么用?C# Board.AddElement使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Board
的用法示例。
在下文中一共展示了Board.AddElement方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Robbie_Can_Pickup_Rubbish
public void Robbie_Can_Pickup_Rubbish()
{
IDictionary<Situation, RobotAction> alwaysPickupStrategy = GetSimpleStrategy(RobotAction.PickUpCan);
Robot robbie = new Robot(alwaysPickupStrategy);
Board board = new Board(10, 10);
Point initialPos = new Point(0, 0);
board.AddElement(robbie, initialPos);
board.AddElement(new Rubbish(), initialPos);
Assert.IsTrue(board.Contents(initialPos).Contains(robbie));
robbie.Act(board);
Assert.IsTrue(board.Contents(initialPos).OfType<Rubbish>().Count() == 0);
Assert.IsTrue(board.Contents(initialPos).Contains(robbie));
}
示例2: BoardElement_Cannot_Be_Added_To_Invalid_Position_On_Board
public void BoardElement_Cannot_Be_Added_To_Invalid_Position_On_Board()
{
// Arrange
var testElement = new TestBoardElement();
var board = new Board(10, 20);
Point position = new Point(15, 12);
Assert.Throws<ArgumentException>(() => board.AddElement(testElement, position));
}
示例3: BoardElement_Can_Be_Added_To_Board
public void BoardElement_Can_Be_Added_To_Board()
{
var testElement = new TestBoardElement();
var board = new Board(10, 20);
Point position = new Point(5, 12);
board.AddElement(testElement, position);
Assert.IsTrue(board.Contents(position).Contains(testElement));
}
示例4: Robbie_Can_Hit_Wall
public void Robbie_Can_Hit_Wall()
{
IDictionary<Situation, RobotAction> moveNorthStrategy = GetSimpleStrategy(RobotAction.MoveNorth);
Robot robbie = new Robot(moveNorthStrategy);
Board board = new Board(10, 10);
Point initialPos = new Point(0, 0);
board.AddElement(robbie, initialPos);
robbie.Act(board);
Assert.IsTrue(board.Contents(initialPos).Contains(robbie));
}
示例5: Element_Can_Be_Moved
public void Element_Can_Be_Moved()
{
var testElement = new TestBoardElement();
var board = new Board(10, 20);
Point position = new Point(5, 12);
board.AddElement(testElement, position);
board.Move(testElement, Board.Direction.North);
var expectedNewPosition = new Point(position.X - 1, position.Y);
Assert.IsFalse(board.Contents(position).Contains(testElement));
Assert.IsTrue(board.Contents(expectedNewPosition).Contains(testElement));
}
示例6: Robbie_Can_Do_Nothing
public void Robbie_Can_Do_Nothing()
{
IDictionary<Situation, RobotAction> stayPutStrategy = GetSimpleStrategy(RobotAction.StayPut);
Robot robbie = new Robot(stayPutStrategy);
Board board = new Board(10, 10);
Point initialPos = new Point(0, 0);
board.AddElement(robbie, initialPos);
Assert.IsTrue(board.Contents(initialPos).Contains(robbie));
robbie.Act(board);
Assert.IsTrue(board.Contents(initialPos).Contains(robbie));
}
示例7: Litter
public void Litter(Board board)
{
int litterCount = 0;
for (int x = 0; x < board.Width; x++)
{
for (int y = 0; y < board.Height; y++)
{
if (random.NextDouble() < _probabiltyOfSquareHavingRubbish)
{
board.AddElement(new Rubbish(), new Point(x, y));
++litterCount;
}
}
}
//Debug.WriteLine("Litter Count: {0}", litterCount);
}
示例8: Robot_Can_Move
public void Robot_Can_Move()
{
IDictionary<Situation, RobotAction> alwaysMoveSouthStrategy = GetSimpleStrategy(RobotAction.MoveSouth);
Robot robbie = new Robot(alwaysMoveSouthStrategy);
Board board = new Board(10, 10);
Point initialPos = new Point(0, 0);
board.AddElement(robbie, initialPos);
robbie.Act(board);
Assert.IsFalse(board.Contents(initialPos).Contains(robbie));
Assert.IsTrue(board.Contents(initialPos + new Point(1, 0)).Contains(robbie));
}