public async Task SetUpAsync() { _map = await SquareMapFactory.CreateAsync(10); var playerMock = new Mock <IPlayer>(); _player = playerMock.Object; var actorMock = new Mock <IActor>(); actorMock.SetupGet(x => x.Node).Returns(() => _factActorNode); actorMock.Setup(x => x.MoveToNode(It.IsAny <IMapNode>())) .Callback <IMapNode>(node => _factActorNode = node); actorMock.SetupGet(x => x.Owner).Returns(_player); _actor = actorMock.Object; // Маршрут из 3-х точек var patrolRoute3PointsMock = new Mock <IPatrolRoute>(); var route3Points = new IMapNode[] { _map.Nodes.OfType <HexNode>().SelectBy(1, 1), _map.Nodes.OfType <HexNode>().SelectBy(5, 3), _map.Nodes.OfType <HexNode>().SelectBy(3, 5) }; patrolRoute3PointsMock .SetupGet(x => x.Points) .Returns(route3Points); _patrolRoute3Points = patrolRoute3PointsMock.Object; // Маршрут из 2-х точек по диагонали комнаты var patrolRoute2DiagonalPointsMock = new Mock <IPatrolRoute>(); var route2DiagonalPoints = new IMapNode[] { _map.Nodes.OfType <HexNode>().SelectBy(0, 0), _map.Nodes.OfType <HexNode>().SelectBy(9, 9) }; patrolRoute2DiagonalPointsMock .SetupGet(x => x.Points) .Returns(route2DiagonalPoints); _patrolRoute2DiagonalPoints = patrolRoute2DiagonalPointsMock.Object; var actors = new List <IActor> { _actor }; var actorListMock = new Mock <IActorManager>(); actorListMock.SetupGet(x => x.Items).Returns(actors); _actorList = actorListMock.Object; var decisionSourceMock = new Mock <IDecisionSource>(); decisionSourceMock.Setup(x => x.SelectIdleDuration(It.IsAny <int>(), It.IsAny <int>())) .Returns(ExpectedIdleDuration); _decisionSource = decisionSourceMock.Object; }
public PatrolLogic(IActor actor, IPatrolRoute patrolRoute, ISectorMap map, IActorManager actors, IDecisionSource decisionSource, ITacticalActUsageService actService) : base(actor, map, actors, decisionSource, actService) { _patrolRoute = patrolRoute; }
public PatrolLogic(IActor actor, IPatrolRoute patrolRoute, IMap map, IActorManager actors, IDecisionSource decisionSource, ITacticalActUsageService actService) { _actor = actor; _patrolRoute = patrolRoute; _map = map; _actorList = actors; _decisionSource = decisionSource; _actService = actService; _persuitCounter = PERSIUT_COUNTER; }