コード例 #1
0
 public void Init(Transform cameraTransform, Camera camera, IMazeJumper maze)
 {
     _cameraTransform = cameraTransform;
     _camera          = camera;
     _currentSize     = _camera.orthographicSize;
     _maze            = maze;
 }
コード例 #2
0
 public void Init(Transform cameraTransform, Camera camera, IMazeJumper maze)
 {
     _cameraTransform = cameraTransform;
     _camera          = camera;
     _currentSize     = _camera.orthographicSize;
     _maze            = maze;
     _screenWidth     = Screen.width;
     _screenHeight    = Screen.height;
     _aspectRatio     = (float)_screenWidth / _screenHeight;
 }
コード例 #3
0
        private CellValidationResult GetResult(IMazeJumper maze, MazePoint point)
        {
            maze.JumpToPoint(point);
            var flag = maze.GetFlagFromPoint();

            return(new CellValidationResult
            {
                CellValid = flag != Direction.None,
                Flag = flag,
                Point = maze.CurrentPoint
            });
        }
コード例 #4
0
        public bool EveryPointHasDirection(IMazeJumper maze)
        {
            var results            = _mazeHelper.GetForEachPoint <CellValidationResult>(maze.Size, x => GetResult(maze, x)).ToList();
            var validationFailures = results.Where(x => x.Flag == Direction.None).ToList();

            if (!validationFailures.Any())
            {
                return(true);
            }
            //var first = validationFailures.First();
            return(false);
        }
コード例 #5
0
 public AgentResults RunAgent(IMazeJumper mazeJumper)
 {
     mazeJumper.SetState(ModelMode.Standard);
     mazeJumper.JumpToPoint(mazeJumper.StartPoint);
     return(RunAgentBase(mazeJumper.JumpingFinished()));
 }