예제 #1
0
파일: GameBoard.cs 프로젝트: srakowski/LD40
        public Vector2 CalculateDrawAt(GameContent content)
        {
            var xPos   = (this.Position.X * content.HexTile.Width) + (-this.Position.Y * (content.HexTile.Width * 0.5f));
            var yPos   = this.Position.Y * (content.HexTile.Height * 0.75f);
            var drawAt = new Vector2(xPos, yPos);

            return(drawAt);
        }
예제 #2
0
파일: GameState.cs 프로젝트: srakowski/LD40
 public GameContext(Random random, GameBoard board, Group group, GameContent content, Game game, Action reset)
 {
     this.Random  = random;
     this.Board   = board;
     this.Group   = group;
     this.Content = content;
     this.Game    = game;
     this.Reset   = reset;
 }
예제 #3
0
 public ApokalipsaGame()
 {
     _graphics = new GraphicsDeviceManager(this);
     _graphics.PreferredBackBufferWidth  = 1024;
     _graphics.PreferredBackBufferHeight = 768;
     Content.RootDirectory = "Content";
     _random                 = new Random();
     _content                = new GameContent();
     _input                  = new Input();
     _gameStateManager       = new GameStateManager();
     _gameStateManager.State = new TitleState();
 }
예제 #4
0
파일: GameBoard.cs 프로젝트: srakowski/LD40
 public GameBoard(
     Random random,
     GameContent content,
     Dictionary <Point, GameTile> tiles)
 {
     _random  = random;
     _content = content;
     _tiles   = tiles;
     foreach (var tile in _tiles.Values)
     {
         tile.GameBoard = this;
     }
 }
예제 #5
0
파일: GameBoard.cs 프로젝트: srakowski/LD40
        // GENERATE MAP

        public static GameBoard Generate(Random random, GameContent content)
        {
            var tiles = new Dictionary <Point, GameTile>();
            var originTilePosition = new Point(0, 0);

            tiles.Add(originTilePosition, new GameTile(originTilePosition, GameTileType.Urban));
            AddLayer(GameTileType.Urban, tiles);
            AddLayer(GameTileType.Suburban, tiles);
            AddLayer(GameTileType.Suburban, tiles);
            AddLayer(GameTileType.Rural, tiles);
            AddLayer(GameTileType.Rural, tiles);
            return(new GameBoard(random, content, tiles));
        }