public IActivateableWorldObject[,] CreateTiles(Coordinate dimensions, IRectangleSection fittingRectangle) { var tiles = new IActivateableWorldObject[dimensions.Y, dimensions.X]; var tileRects = fittingRectangle.Section.Split(dimensions); var coordinateRectangle = new CoordinateRectangle(Coordinates.Zero, dimensions); foreach (var coordinate in coordinateRectangle.Points) { tiles.Set(coordinate, tileFactory.Create()); tiles.Get(coordinate).Position = tileRects.Get(coordinate).Center; tiles.Get(coordinate).Scale = tileRects.Get(coordinate).Dimensions; } return(tiles); }
public void SetPipeLink(CoordinatePair edge, IActivateableWorldObject pipeLink) { pipeLinks[edge] = pipeLink; }
public void SetShipComponent(Coordinate position, IActivateableWorldObject shipComponent) { shipComponents.Add(position, shipComponent); }
public void SetBlock(Coordinate position, IActivateableWorldObject block) { blocks.Add(position, block); }