Example #1
0
        public static void DrawLine(STETilemap tilemap, int x0, int y0, int x1, int y1, uint[,] tileData, bool randomize = false)
        {
            int w = tileData.GetLength(0);
            int h = tileData.GetLength(1);

            TilemapDrawingUtils.Line(x0, y0, x1, y1,
                                     (x, y) =>
            {
                int dataIdx0 = randomize ? Random.Range(0, w) : (x % w + w) % w;
                int dataIdx1 = randomize ? Random.Range(0, h) : (y % h + h) % h;
                tilemap.SetTileData(x, y, tileData[dataIdx0, dataIdx1]);
                return(true);
            }
                                     );
        }
        public static void DrawLine(Tilemap tilemap, Vector2 locPosA, Vector2 locPosB, uint[,] tileData)
        {
            int w  = tileData.GetLength(0);
            int h  = tileData.GetLength(1);
            int x0 = TilemapUtils.GetGridX(tilemap, locPosA);
            int y0 = TilemapUtils.GetGridY(tilemap, locPosA);
            int x1 = TilemapUtils.GetGridX(tilemap, locPosB);
            int y1 = TilemapUtils.GetGridY(tilemap, locPosB);

            TilemapDrawingUtils.Line(x0, y0, x1, y1,
                                     (x, y) =>
            {
                tilemap.SetTileData(x, y, tileData[(x % w + w) % w, (y % h + h) % h]);
                return(true);
            }
                                     );
        }