Drawing
The following snippet will display a red square on the user's screen for 5 seconds.
local square = Drawing.new("Square")
square.Filled = true
square.Color = Color3.fromRGB(255, 0, 0)
square.Position = Vector2.new(20, 20)
square.Size = Vector2.new(200, 200)
square.Visible = true
square.Corner = 20
wait(5)
square:Remove()Drawing.new
Drawing.new(drawingType: string): DrawingObjectThe documented rendering types are:
- Square
- Line
- Circle
- Text
- Triangle
- Image
- Quad
Matcha 1.0.0 does not validate
drawingTypeat construction time: evenDrawing.new("__MatchaInvalidType")returned a removable proxy. Successful construction alone does not prove that a type renders.
DrawingObject
Methods
Remove
function DrawingObject:Remove(): nilBase properties
Shared set of properties across all DrawingObject types
Color
DrawingObject.Color: Color3Color writes succeeded on every tested Drawing object, but reading Color returned nil. Treat it as write-only unless your target build proves otherwise.
Transparency
DrawingObject.Transparency: numberVisible
DrawingObject.Visible: boolPosition
DrawingObject.Position: Vector2ZIndex
DrawingObject.ZIndex: intSquare properties
Size
DrawingObject.Size: Vector2Filled
DrawingObject.Filled: boolThickness
DrawingObject.Thickness: numberControls the square outline width when Filled is false.
Corner
DrawingObject.Corner: numberRounds the square's corners. Larger values produce more rounding.
Line properties
From
DrawingObject.From: Vector2To
DrawingObject.To: Vector2Thickness
DrawingObject.Thickness: intCircle properties
Radius
DrawingObject.Radius: floatNumSides
DrawingObject.NumSides: intThickness
DrawingObject.Thickness: intFilled
DrawingObject.Filled: boolControls whether the circle is filled or rendered as an outline.
Text properties
Text
DrawingObject.Text: stringOutline
DrawingObject.Outline: boolCenter
DrawingObject.Center: boolFont
DrawingObject.Font: FontSize
DrawingObject.Size: numberMatcha 1.0.0 uses Size for text size. Writing FontSize raised Unknown property FontSize.
TextBounds
DrawingObject.TextBounds: Vector2Readable computed text bounds. With Text = "Matcha Audit" and Size = 16, the audit returned Vector2(84, 13).
Triangle properties
PointA
DrawingObject.PointA: Vector2PointB
DrawingObject.PointB: Vector2PointC
DrawingObject.PointC: Vector2Thickness
DrawingObject.Thickness: numberFilled
DrawingObject.Filled: boolImage properties
Data
DrawingObject.Data: stringThe raw binary string of the image data (e.g. loaded via game:HttpGet).
Image Size
DrawingObject.Size: Vector2The width and height of the image (defaults to 50x50).
Rounding
DrawingObject.Rounding: numberThe rounding radius of the image corners (defaults to 0).
local image = Drawing.new("Image")
image.Data = game:HttpGet("https://example.com/image.png")
image.Size = Vector2.new(120, 120)
image.Rounding = 18
image.Visible = trueCorner
DrawingObject.Corner: numberAccepted as an alternate image-corner value. Prefer Rounding in new code because it clearly describes the image behavior.
Radius
DrawingObject.Radius: numberAccepted as another image-corner radius value. Prefer Rounding for readability.
Quad
Drawing.new("Quad") is visually verified in Matcha. Its four independently movable points can form any four-sided ESP shape.
Properties
Quad.PointA: Vector2
Quad.PointB: Vector2
Quad.PointC: Vector2
Quad.PointD: Vector2
Quad.Thickness: number
Quad.Filled: booleanlocal quad = Drawing.new("Quad")
quad.PointA = Vector2.new(100, 100)
quad.PointB = Vector2.new(220, 90)
quad.PointC = Vector2.new(240, 210)
quad.PointD = Vector2.new(90, 220)
quad.Filled = false
quad.Thickness = 2
quad.Color = Color3.fromRGB(255, 255, 255)
quad.Visible = trueCandidate Polygon surface
Drawing.new("Polygon") returned a proxy whose properties could be assigned and read back, but Polygon rendering has not been visually tested. The constructor also accepts invalid type names, so proxy creation alone is not rendering proof.
Polygon.PointA: Vector2
Polygon.PointB: Vector2
Polygon.PointC: Vector2
Polygon.PointD: Vector2
Polygon.NumSides: number
Polygon.Thickness: number
Polygon.Filled: booleanPolygon.Points, Polygon.Vertices, and Polygon.Sides were rejected in the tested build.
Fonts
Drawing.Fonts.UI = 0 -- ProggyClean
Drawing.Fonts.System = 1 -- San Francisco
Drawing.Fonts.SystemBold = 2 -- SF Bold
Drawing.Fonts.Minecraft = 4 -- Minecraft
Drawing.Fonts.Monospace = 5 -- JetBrains
Drawing.Fonts.Pixel = 7 -- Pixel
Drawing.Fonts.Fortnite = 8 -- Fortnite
Drawing.Fonts.ProximaSoftBold = 11 -- Proxima Soft Bold