protected override void InitGrid() { VectorPoint rectDimensions = Dimensions; switch (shape) { case Shape.Rectangle: base.Grid = FlatHexGrid <TileCell> .Rectangle(rectDimensions.X, rectDimensions.Y); break; case Shape.Parallelogram: base.Grid = FlatHexGrid <TileCell> .Parallelogram(rectDimensions.X, rectDimensions.Y); break; case Shape.FatRectangle: base.Grid = FlatHexGrid <TileCell> .FatRectangle(rectDimensions.X, rectDimensions.Y); break; case Shape.ThinRectangle: base.Grid = FlatHexGrid <TileCell> .ThinRectangle(rectDimensions.X, rectDimensions.Y); break; case Shape.Hexagon: base.Grid = FlatHexGrid <TileCell> .Hexagon(Size); break; case Shape.LeftTriangle: base.Grid = FlatHexGrid <TileCell> .LeftTriangle(Size); break; case Shape.RightTriangle: base.Grid = FlatHexGrid <TileCell> .RightTriangle(Size); break; case Shape.Diamond: base.Grid = FlatHexGrid <TileCell> .Diamond(Size); break; case Shape.Single: base.Grid = FlatHexGrid <TileCell> .Single(); break; case Shape.Custom: var shapeBuilder = GetComponent <CustomGridBuilder>(); base.Grid = shapeBuilder.MakeGrid <TileCell, FlatHexPoint>(); break; default: throw new ArgumentOutOfRangeException(); } }
protected override void InitGrid() { VectorPoint rectDimensions = Dimensions; switch (shape) { case Shape.Rectangle: Grid = FlatHexGrid <MeshCell> .Rectangle(rectDimensions.X, rectDimensions.Y); break; case Shape.Parallelogram: Grid = FlatHexGrid <MeshCell> .Parallelogram(rectDimensions.X, rectDimensions.Y); break; case Shape.FatRectangle: Grid = FlatHexGrid <MeshCell> .FatRectangle(rectDimensions.X, rectDimensions.Y); break; case Shape.ThinRectangle: Grid = FlatHexGrid <MeshCell> .ThinRectangle(rectDimensions.X, rectDimensions.Y); break; case Shape.Hexagon: Grid = FlatHexGrid <MeshCell> .Hexagon(Size); break; case Shape.LeftTriangle: Grid = FlatHexGrid <MeshCell> .LeftTriangle(Size); break; case Shape.RightTriangle: Grid = FlatHexGrid <MeshCell> .RightTriangle(Size); break; case Shape.Diamond: Grid = FlatHexGrid <MeshCell> .Diamond(Size); break; case Shape.Single: Grid = FlatHexGrid <MeshCell> .Single(); break; case Shape.Custom: Grid = GetCustomGrid(); break; default: throw new ArgumentOutOfRangeException(); } }