Beispiel #1
0
        public TrackRenderer(ITrackParameters trackParameters, IGameParameters gameParameters, IImageFactory imageFactory, ITrackPathBuilder trackPathBuilder)
        {
            _trackParameters = trackParameters;
            _gameParameters  = gameParameters;
            _imageFactory    = imageFactory;

            _cornerTrackPath       = trackPathBuilder.BuildCornerTrackPath();
            _cornerPlankPath       = trackPathBuilder.BuildCornerPlankPath();
            _cornerSinglePlankPath = trackPathBuilder.BuildCornerPlankPath(1);
            _horizontalTrackPath   = trackPathBuilder.BuildHorizontalTrackPath();
            _horizontalPlankPath   = trackPathBuilder.BuildHorizontalPlankPath();

            _plankPaint = new PaintBrush
            {
                Color       = Colors.Black,
                Style       = PaintStyle.Stroke,
                StrokeWidth = _trackParameters.PlankWidth,
                IsAntialias = true
            };
            _trackClear = new PaintBrush
            {
                Color       = Colors.White,
                Style       = PaintStyle.Stroke,
                StrokeWidth = _trackParameters.RailTopWidth,
                IsAntialias = true
            };
            _trackEdge = new PaintBrush
            {
                Color       = Colors.Black,
                Style       = PaintStyle.Stroke,
                StrokeWidth = _trackParameters.RailWidth,
                IsAntialias = true
            };
        }
Beispiel #2
0
        public TerrainRenderer(ITerrainMap terrainMap, IGameParameters gameParameters)
        {
            _terrainMap     = terrainMap;
            _gameParameters = gameParameters;

            _terrainMap.CollectionChanged += (s, e) => _dirty = true;
        }
Beispiel #3
0
        public NatureRenderer(IRenderer <Tree> treeRenderer, ILayout <Tree> collection, IGameParameters gameParameters)
        {
            _treeRenderer   = treeRenderer;
            _collection     = collection;
            _gameParameters = gameParameters;

            _collection.CollectionChanged += (s, e) => _dirty = true;
        }
Beispiel #4
0
        public static void SetupCanvasToDrawTrain(ICanvas canvas, IMovable train, IGameParameters gameParameters)
        {
            float x = gameParameters.CellSize * train.RelativeLeft;
            float y = gameParameters.CellSize * train.RelativeTop;

            canvas.Translate(x, y);
            canvas.RotateDegrees(train.Angle);
        }
        internal RenderMgr(IGameParameters gameResults, IInputOutputMgr inputOutputMgr)
        {
            _gameParameters = gameResults;
            _inputOutputMgr = inputOutputMgr;
            _cts            = new CancellationTokenSource();

            StartRenderCycle();
        }
        public TrackLayoutRenderer(ILayout <Track> trackLayout, IRenderer <Track> trackRenderer, IGameParameters gameParameters)
        {
            _trackLayout    = trackLayout;
            _trackRenderer  = trackRenderer;
            _gameParameters = gameParameters;

            _trackLayout.CollectionChanged += (s, e) => _dirty = true;
        }
 public void InitializeGame(Goodwill goodwill, IGameParameters config)
 {
     _config = config;
     _goodwill = goodwill;
     InitializeCompanies();
     InitializeRessources();
     InitializeMarketPart();
     InitializePlayers();
     DistributeActions();
 }
Beispiel #8
0
 public MiniMapDelegate(ILayout trackLayout, IGameParameters gameParameters, IPixelMapper pixelMapper, ITerrainMap terrainMap)
 {
     _trackLayout    = trackLayout;
     _gameParameters = gameParameters;
     _pixelMapper    = pixelMapper;
     _terrainMap     = terrainMap;
     _pixelMapper.ViewPortChanged   += (s, e) => _redraw = true;
     _trackLayout.CollectionChanged += (s, e) => _redraw = true;
     _terrainMap.CollectionChanged  += (s, e) => _redraw = true;
 }
Beispiel #9
0
        public TrackPathBuilder(IGameParameters gameParameters, ITrackParameters trackParameters, IPathFactory pathFactory)
        {
            _gameParameters  = gameParameters;
            _trackParameters = trackParameters;
            _pathFactory     = pathFactory;

            _innerTrackOffset = _gameParameters.CellSize / 2.0f - _trackParameters.TrackWidth / 2.0f;
            _outerTrackOffset = _gameParameters.CellSize / 2.0f + _trackParameters.TrackWidth / 2.0f;
            _innerPlankOffset = _gameParameters.CellSize / 2.0f - _trackParameters.PlankLength / 2.0f;
            _outerPlankOffset = _gameParameters.CellSize / 2.0f + _trackParameters.PlankLength / 2.0f;
        }
Beispiel #10
0
        static public IGame GetGame(string gameType, GameParameterFactory gameParameterFactory)
        {
            IGameParameters gameParameters = gameParameterFactory.GetGameParameters(gameType);
            IGame           game           = null;

            switch (gameType)
            {
            case "Add":
                if (gameParameters is AddGameParameters)
                {
                    game = new AdditionGame((AddGameParameters)gameParameters);
                }
                break;

            case "Subtract":
                if (gameParameters is AddGameParameters)
                {
                    game = new SubtractionGame((AddGameParameters)gameParameters);
                }
                break;

            case "Multiply":
                if (gameParameters is MultiplyGameParameters)
                {
                    game = new MultiplicationTableGame((MultiplyGameParameters)gameParameters);
                }
                break;

            case "Divide":
                if (gameParameters is MultiplyGameParameters)
                {
                    game = new DivisionionTableGame((MultiplyGameParameters)gameParameters);
                }
                break;

            default:
                // throw exception
                game = null;
                break;
            }
            return(game);
        }
Beispiel #11
0
 public TreeRenderer(IImageFactory imageFactory, IGameParameters gameParameters)
 {
     _cellSize      = gameParameters.CellSize;
     _centerOffset  = _cellSize / 2.0f;
     _baseRadius    = _cellSize / 4.0f;
     _minTreeSize   = _baseRadius;
     _maxTreeSize   = _baseRadius * 1.25f;
     _baseTreeBrush = new PaintBrush
     {
         Color = new Color("#1B633A"),
         Style = PaintStyle.Fill
     };
     _topTreeBrush = new PaintBrush
     {
         Color       = new Color("#236A42"),
         Style       = PaintStyle.Fill,
         IsAntialias = true
     };
     _imageFactory = imageFactory;
 }
Beispiel #12
0
 public PixelMapper(IGameParameters gameParameters)
 {
     _gameParameters = gameParameters;
 }
 public HappinessRenderer(ILayout <Track> trackLayout, IGameParameters gameParameters)
 {
     _trackLayout    = trackLayout;
     _gameParameters = gameParameters;
 }
Beispiel #14
0
 public TrackParameters(IGameParameters gameParameters)
 {
     _gameParameters = gameParameters;
 }
Beispiel #15
0
 public Goodwill(IGameParameters config, IGameInitializer gameInitializer)
 {
     _config = config;
     _gameInitializer = gameInitializer;
 }
Beispiel #16
0
 public TrainRenderer(IGameParameters gameParameters, ITrainParameters trainParameters, ITrainPainter trainPainter)
 {
     _gameParameters  = gameParameters;
     _trainParameters = trainParameters;
     _trainPainter    = trainPainter;
 }
Beispiel #17
0
 public TrainLookaheadRenderer(IGameBoard gameBoard, IGameParameters gameParameters, ITrainPainter painter)
 {
     _gameBoard      = gameBoard;
     _gameParameters = gameParameters;
     _painter        = painter;
 }
Beispiel #18
0
 public GridRenderer(IGameParameters parameters)
 {
     _gameParameters = parameters;
 }