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); }
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; }
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(); }
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; } }
// 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)); }