diff --git a/worldeditadditions/lib/sculpt/preview_brush.lua b/worldeditadditions/lib/sculpt/preview_brush.lua index c6da56f..ede291c 100644 --- a/worldeditadditions/lib/sculpt/preview_brush.lua +++ b/worldeditadditions/lib/sculpt/preview_brush.lua @@ -7,7 +7,8 @@ local make_brush = dofile(wea.modpath.."/lib/sculpt/make_brush.lua") -- @param brush_name string The name of the brush to create a preview for. -- @param target_size Vector3 The target size of the brush to create. Default: (10, 10, 0). -- @returns bool,string If the operation was successful, true followed by a preview of the brush as a string. If the operation was not successful, false and an error message string is returned instead. -local function preview_brush(brush_name, target_size) +local function preview_brush(brush_name, target_size, framed) + if framed == nil then framed = true end if not target_size then target_size = Vector3.new(10, 10, 0) end local success, brush, brush_size = make_brush(brush_name, target_size) @@ -22,11 +23,14 @@ local function preview_brush(brush_name, target_size) values["."] = 1 values[" "] = 0 - print(wea.inspect(brush)) + local frame_vertical = "+"..string.rep("-", math.max(0, brush_size.x)).."+" local result = {} + if framed then table.insert(result, frame_vertical) end + for y = brush_size.y-1, 0, -1 do local row = {} + if framed then table.insert(row, "|") end for x = brush_size.x-1, 0, -1 do local i = y*brush_size.x + x local pixel = " " @@ -39,9 +43,13 @@ local function preview_brush(brush_name, target_size) end table.insert(row, pixel) end + if framed then table.insert(row, "|") end table.insert(result, table.concat(row)) end - print("RESULT", wea.inspect(result)) + + if framed then table.insert(result, frame_vertical) end + + return true, table.concat(result, "\n") end