local H={}H.__index=H H.ClassName="\083\099\114\101\101\110\067\111\118\101\114\066\117\105\108\100\101\114"function H.new(A)local Q=setmetatable({},H)Q.Template=A or error("\078\111 \084\101\109\112\108\097\116\101")return Q end function H.CreateFrame(H)local A=H.Template or error("\078\111 \116\101\109\112\108\097\116\101")local Q=Instance.new("\070\114\097\109\101")Q.BorderSizePixel=0 Q.BackgroundColor3=A.BackgroundColor3 Q.BackgroundTransparency=0 Q.ZIndex=A.ZIndex Q.Active=true Q.Name="\070\114\097\109\101"return Q end function H.CreateSquare(A,H)local Q=A:CreateFrame()Q.Name="\083\113\117\097\114\101\070\114\097\109\101"Q.AnchorPoint=H.AnchorPoint Q.Position=H.Position return Q end return H
--- Helper class for ScreenCover
-- @classmod ScreenCoverBuilder


local ScreenCoverBuilder = {}
ScreenCoverBuilder.__index = ScreenCoverBuilder
ScreenCoverBuilder.ClassName = "ScreenCoverBuilder"

function ScreenCoverBuilder.new(Template)
	local self = setmetatable({}, ScreenCoverBuilder)

	self.Template = Template or error("No Template")

	return self
end

function ScreenCoverBuilder:CreateFrame()
	local template = self.Template or error("No template")

	local frame = Instance.new("Frame")
	frame.BorderSizePixel = 0
	frame.BackgroundColor3 = template.BackgroundColor3
	frame.BackgroundTransparency = 0
	frame.ZIndex = template.ZIndex
	frame.Active = true
	frame.Name = "Frame"

	return frame
end

function ScreenCoverBuilder:CreateSquare(squareData)
	local frame = self:CreateFrame()

	frame.Name = "SquareFrame"
	frame.AnchorPoint = squareData.AnchorPoint
	frame.Position = squareData.Position

	return frame
end

return ScreenCoverBuilder