Drawing Library for Roblox Scripts
Drawing Library for Roblox Scripts
local drawing = {
Fonts = {
UI = 0,
System = 1,
Plex = 2,
Monospace = 3
}
};
[Link]:Connect(function(...)
fetchedvariable = ...;
end);
[Link]:Connect(function(f, ...)
f(...);
end);
do -- This may look completely useless, but it allows TextBounds to update without
yielding and therefore breaking the metamethods.
local fonts = {
[Link]("rbxasset://fonts/families/[Link]",
[Link], [Link]),
[Link]("rbxasset://fonts/families/[Link]",
[Link], [Link]),
[Link]("rbxasset://fonts/families/[Link]",
[Link], [Link]),
[Link]("rbxasset://fonts/families/[Link]",
[Link], [Link])
};
for i, v in fonts do
game:GetService("TextService"):GetTextBoundsAsync(create("GetTextBoundsParams", {
Text = "Hi",
Size = 12,
Font = v,
Width = huge
}, nil, true));
end
end
do
local drawingDirectory = create("ScreenGui", {
DisplayOrder = 15,
IgnoreGuiInset = true,
Name = "drawingDirectory",
Parent = gethui(),
ZIndexBehavior = [Link]
});
local itemCounter = 0;
local cache = {};
function [Link]()
itemCounter = itemCounter + 1;
local id = itemCounter;
cache[id] = newLine;
return newLine;
end
function line:__index(k)
local prop = self._properties[k];
if prop ~= nil then
return prop;
end
return line[k];
end
function line:__newindex(k, v)
if self.__OBJECT_EXISTS == true then
local props = self._properties;
props[k] = v;
if k == "Color" then
self._frame.BackgroundColor3 = v;
elseif k == "From" then
self:_updatePosition();
elseif k == "Thickness" then
self._frame.Size =
_udim2fromoffset(self._frame.AbsoluteSize.X, _mathmax(v, 1));
elseif k == "To" then
self:_updatePosition();
elseif k == "Transparency" then
self._frame.BackgroundTransparency = _mathclamp(1 -
v, 0, 1);
elseif k == "Visible" then
self._frame.Visible = v;
elseif k == "ZIndex" then
self._frame.ZIndex = v;
end
end
end
function line:__iter()
return next, self._properties;
end
function line:__tostring()
return "Drawing";
end
function line:Destroy()
cache[self._id] = nil;
self.__OBJECT_EXISTS = false;
_eventfire(runfunction, _destroy, self._frame.instance);
-- _destroy(self._frame);
end
function line:_updatePosition()
local props = self._properties;
updatePosition(self._frame, [Link], [Link],
[Link]);
end
[Link] = [Link];
[Link] = line;
end
-- circle class
do
local circle = {};
function [Link]()
itemCounter = itemCounter + 1;
local id = itemCounter;
cache[id] = newCircle;
return newCircle;
end
function circle:__index(k)
local prop = self._properties[k];
if prop ~= nil then
return prop;
end
return circle[k];
end
function circle:__newindex(k, v)
if self.__OBJECT_EXISTS == true then
local props = self._properties;
if props[k] == nil or props[k] == v or typeof(props[k]) ~=
typeof(v) then
return;
end
props[k] = v;
if k == "Color" then
self._frame.BackgroundColor3 = v;
self._frame._stroke.Color = v;
elseif k == "Filled" then
self._frame.BackgroundTransparency = v and 1 -
[Link] or 1;
elseif k == "Position" then
self._frame.Position = _udim2fromoffset(v.X, v.Y);
elseif k == "Radius" then
self:_updateRadius();
elseif k == "Thickness" then
self._frame._stroke.Thickness = _mathmax(v, 1);
self:_updateRadius();
elseif k == "Transparency" then
self._frame._stroke.Transparency = 1 - v;
if [Link] then
self._frame.BackgroundTransparency = 1 - v;
end
elseif k == "Visible" then
self._frame.Visible = v;
elseif k == "ZIndex" then
self._frame.ZIndex = v;
end
end
end
function circle:__iter()
return next, self._properties;
end
function circle:__tostring()
return "Drawing";
end
function circle:Destroy()
cache[self._id] = nil;
self.__OBJECT_EXISTS = false;
_eventfire(runfunction, _destroy, self._frame.instance);
-- _destroy(self._frame);
end
function circle:_updateRadius()
local props = self._properties;
local diameter = ([Link] * 2) - ([Link] * 2);
self._frame.Size = _udim2fromoffset(diameter, diameter);
end
[Link] = [Link];
[Link] = circle;
end
-- text class
do
local enumToFont = {
[[Link]] =
[Link]("rbxasset://fonts/families/[Link]", [Link],
[Link]),
[[Link]] =
[Link]("rbxasset://fonts/families/[Link]", [Link],
[Link]),
[[Link]] =
[Link]("rbxasset://fonts/families/[Link]", [Link],
[Link]),
[[Link]] =
[Link]("rbxasset://fonts/families/[Link]", [Link],
[Link])
};
function [Link]()
itemCounter = itemCounter + 1;
local id = itemCounter;
cache[id] = newText;
return newText;
end
function text:__index(k)
local prop = self._properties[k];
if prop ~= nil then
return prop;
end
return text[k];
end
function text:__newindex(k, v)
if self.__OBJECT_EXISTS == true then
local props = self._properties;
if k == "TextBounds" or props[k] == nil or props[k] == v or
typeof(props[k]) ~= typeof(v) then
return;
end
props[k] = v;
if k == "Center" then
self._frame.TextXAlignment = v and
[Link] or [Link];
elseif k == "Color" then
self._frame.TextColor3 = v;
elseif k == "Font" then
self._frame.FontFace = enumToFont[v];
self:_updateTextBounds();
elseif k == "Outline" then
self._frame._stroke.Enabled = v;
elseif k == "OutlineColor" then
self._frame._stroke.Color = v;
elseif k == "Position" then
self._frame.Position = _udim2fromoffset(v.X, v.Y);
elseif k == "Size" then
self._frame.TextSize = v;
self:_updateTextBounds();
elseif k == "Text" then
self._frame.Text = v;
self:_updateTextBounds();
elseif k == "Transparency" then
self._frame.TextTransparency = 1 - v;
self._frame._stroke.Transparency = 1 - v;
elseif k == "Visible" then
self._frame.Visible = v;
elseif k == "ZIndex" then
self._frame.ZIndex = v;
end
end
end
function text:__iter()
return next, self._properties;
end
function text:__tostring()
return "Drawing";
end
function text:Destroy()
cache[self._id] = nil;
self.__OBJECT_EXISTS = false;
_eventfire(runfunction, _destroy, self._frame.instance);
-- _destroy(self._frame);
end
function text:_updateTextBounds()
local props = self._properties;
[Link] = _gettextboundsasync(textService,
create("GetTextBoundsParams", {
Text = [Link],
Size = [Link],
Font = enumToFont[[Link]],
Width = huge
}).instance);
end
[Link] = [Link];
[Link] = text;
end
-- square class
do
local square = {};
function [Link]()
itemCounter = itemCounter + 1;
local id = itemCounter;
cache[id] = newSquare;
return newSquare;
end
function square:__index(k)
local prop = self._properties[k];
if prop ~= nil then
return prop;
end
return square[k];
end
function square:__newindex(k, v)
if self.__OBJECT_EXISTS == true then
local props = self._properties;
if props[k] == nil or props[k] == v or typeof(props[k]) ~=
typeof(v) then
return;
end
props[k] = v;
if k == "Color" then
self._frame.BackgroundColor3 = v;
self._frame._stroke.Color = v;
elseif k == "Filled" then
self._frame.BackgroundTransparency = v and 1 -
[Link] or 1;
elseif k == "Position" then
self:_updateScale();
elseif k == "Size" then
self:_updateScale();
elseif k == "Thickness" then
self._frame._stroke.Thickness = v;
self:_updateScale();
elseif k == "Transparency" then
self._frame._stroke.Transparency = 1 - v;
if [Link] then
self._frame.BackgroundTransparency = 1 - v;
end
elseif k == "Visible" then
self._frame.Visible = v;
elseif k == "ZIndex" then
self._frame.ZIndex = v;
end
end
end
function square:__iter()
return next, self._properties;
end
function square:__tostring()
return "Drawing";
end
function square:Destroy()
cache[self._id] = nil;
self.__OBJECT_EXISTS = false;
_eventfire(runfunction, _destroy, self._frame.instance);
-- _destroy(self._frame);
end
function square:_updateScale()
local props = self._properties;
self._frame.Position = _udim2fromoffset([Link].X +
[Link], [Link].Y + [Link]);
self._frame.Size = _udim2fromoffset([Link].X -
[Link] * 2, [Link].Y - [Link] * 2);
end
[Link] = [Link];
[Link] = square;
end
-- image class
do
local image = {};
function [Link]()
itemCounter = itemCounter + 1;
local id = itemCounter;
cache[id] = newImage;
return newImage;
end
function image:__index(k)
_assert(k ~= "Data", _stringformat("Attempt to read writeonly
property '%s'", k));
if k == "Loaded" then
return self._frame.IsLoaded;
end
local prop = self._properties[k];
if prop ~= nil then
return prop;
end
return image[k];
end
function image:__newindex(k, v)
if self.__OBJECT_EXISTS == true then
local props = self._properties;
if props[k] == nil or props[k] == v or typeof(props[k]) ~=
typeof(v) then
return;
end
props[k] = v;
if k == "Color" then
self._frame.ImageColor3 = v;
elseif k == "Data" then
self:_newImage(v);
elseif k == "Position" then
self._frame.Position = _udim2fromoffset(v.X, v.Y);
elseif k == "Rounding" then
self._frame._corner.CornerRadius = _udimnew(0, v);
elseif k == "Size" then
self._frame.Size = _udim2fromoffset(v.X, v.Y);
elseif k == "Transparency" then
self._frame.ImageTransparency = 1 - v;
elseif k == "Uri" then
self:_newImage(v, true);
elseif k == "Visible" then
self._frame.Visible = v;
elseif k == "ZIndex" then
self._frame.ZIndex = v;
end
end
end
function image:__iter()
return next, self._properties;
end
function image:__tostring()
return "Drawing";
end
function image:Destroy()
cache[self._id] = nil;
self.__OBJECT_EXISTS = false;
_eventfire(runfunction, _destroy, self._frame.instance);
-- _destroy(self._frame);
end
[Link] = [Link];
[Link] = image;
end
-- triangle class
do
local triangle = {};
function [Link]()
itemCounter = itemCounter + 1;
local id = itemCounter;
cache[id] = newTriangle;
return newTriangle;
end
function triangle:__index(k)
local prop = self._properties[k];
if prop ~= nil then
return prop;
end
return triangle[k];
end
function triangle:__newindex(k, v)
if self.__OBJECT_EXISTS == true then
local props, frame = self._properties, self._frame;
if props[k] == nil or props[k] == v or typeof(props[k]) ~=
typeof(v) then
return;
end
props[k] = v;
if k == "Color" then
frame._line1.BackgroundColor3 = v;
frame._line2.BackgroundColor3 = v;
frame._line3.BackgroundColor3 = v;
elseif k == "Filled" then
-- TODO
elseif k == "PointA" then
self:_updateVertices({
{ frame._line1, [Link], [Link] },
{ frame._line3, [Link], [Link] }
});
if [Link] then
self:_calculateFill();
end
elseif k == "PointB" then
self:_updateVertices({
{ frame._line1, [Link], [Link] },
{ frame._line2, [Link], [Link] }
});
if [Link] then
self:_calculateFill();
end
elseif k == "PointC" then
self:_updateVertices({
{ frame._line2, [Link], [Link] },
{ frame._line3, [Link], [Link] }
});
if [Link] then
self:_calculateFill();
end
elseif k == "Thickness" then
local thickness = _mathmax(v, 1);
frame._line1.Size =
_udim2fromoffset(frame._line1.AbsoluteSize.X, thickness);
frame._line2.Size =
_udim2fromoffset(frame._line2.AbsoluteSize.X, thickness);
frame._line3.Size =
_udim2fromoffset(frame._line3.AbsoluteSize.X, thickness);
elseif k == "Transparency" then
frame._line1.BackgroundTransparency = 1 - v;
frame._line2.BackgroundTransparency = 1 - v;
frame._line3.BackgroundTransparency = 1 - v;
elseif k == "Visible" then
self._frame.Visible = v;
elseif k == "ZIndex" then
self._frame.ZIndex = v;
end
end
end
function triangle:__iter()
return next, self._properties;
end
function triangle:__tostring()
return "Drawing";
end
function triangle:Destroy()
cache[self._id] = nil;
self.__OBJECT_EXISTS = false;
_eventfire(runfunction, _destroy, self._frame.instance);
-- _destroy(self._frame);
end
function triangle:_updateVertices(vertices)
local thickness = self._properties.Thickness;
for i, v in vertices do
updatePosition(v[1], v[2], v[3], thickness);
end
end
function triangle:_calculateFill()
end
[Link] = [Link];
[Link] = triangle;
end
-- quad class
do
local quad = {};
function [Link]()
itemCounter = itemCounter + 1;
local id = itemCounter;
function quad:__index(k)
local prop = self._properties[k];
if prop ~= nil then
return prop;
end
return quad[k];
end
function quad:__newindex(k, v)
if self.__OBJECT_EXISTS == true then
local props, frame = self._properties, self._frame;
if props[k] == nil or props[k] == v or typeof(props[k]) ~=
typeof(v) then
return;
end
props[k] = v;
if k == "Color" then
frame._line1.BackgroundColor3 = v;
frame._line2.BackgroundColor3 = v;
frame._line3.BackgroundColor3 = v;
frame._line4.BackgroundColor3 = v;
elseif k == "Filled" then
-- TODO
elseif k == "PointA" then
self:_updateVertices({
{ frame._line1, [Link], [Link] },
{ frame._line4, [Link], [Link] }
});
if [Link] then
self:_calculateFill();
end
elseif k == "PointB" then
self:_updateVertices({
{ frame._line1, [Link], [Link] },
{ frame._line2, [Link], [Link] }
});
if [Link] then
self:_calculateFill();
end
elseif k == "PointC" then
self:_updateVertices({
{ frame._line2, [Link], [Link] },
{ frame._line3, [Link], [Link] }
});
if [Link] then
self:_calculateFill();
end
elseif k == "PointD" then
self:_updateVertices({
{ frame._line3, [Link], [Link] },
{ frame._line4, [Link], [Link] }
});
if [Link] then
self:_calculateFill();
end
elseif k == "Thickness" then
local thickness = _mathmax(v, 1);
frame._line1.Size =
_udim2fromoffset(frame._line1.AbsoluteSize.X, thickness);
frame._line2.Size =
_udim2fromoffset(frame._line2.AbsoluteSize.X, thickness);
frame._line3.Size =
_udim2fromoffset(frame._line3.AbsoluteSize.X, thickness);
frame._line4.Size =
_udim2fromoffset(frame._line3.AbsoluteSize.X, thickness);
elseif k == "Transparency" then
frame._line1.BackgroundTransparency = 1 - v;
frame._line2.BackgroundTransparency = 1 - v;
frame._line3.BackgroundTransparency = 1 - v;
frame._line4.BackgroundTransparency = 1 - v;
elseif k == "Visible" then
self._frame.Visible = v;
elseif k == "ZIndex" then
self._frame.ZIndex = v;
end
end
end
function quad:__iter()
return next, self._properties;
end
function quad:__tostring()
return "Drawing";
end
function quad:Destroy()
cache[self._id] = nil;
self.__OBJECT_EXISTS = false;
_eventfire(runfunction, _destroy, self._frame.instance);
-- _destroy(self._frame);
end
function quad:_updateVertices(vertices)
local thickness = self._properties.Thickness;
for i, v in vertices do
updatePosition(v[1], v[2], v[3], thickness);
end
end
function quad:_calculateFill()
end
[Link] = [Link];
[Link] = quad;
end
[Link] = newcclosure(function(x)
return _assert(classes[x], _stringformat("Invalid drawing type '%s'",
x)).new();
end);
[Link] = newcclosure(function()
for i, v in cache do
if v.__OBJECT_EXISTS then
v:Destroy();
end
end
end);
[Link] = cache;
end
setreadonly(drawing, true);
setreadonly([Link], true);
[Link] = drawing;
[Link] = [Link];
end)();
--
local Camera = game:GetService("Workspace").Camera
local lighting = game:GetService("Lighting")
local OsClock = [Link]()
local RunService = game:GetService("RunService")
--
if not LPH_OBFUSCATED then
LPH_JIT = function(...) return ... end
LPH_JIT_MAX = function(...) return ... end
LPH_JIT_ULTRA = function(...) return ... end
LPH_NO_VIRTUALIZE = function(...) return ... end
LPH_ENCSTR = function(...) return ... end
LPH_STRENC = function(...) return ... end
LPH_HOOK_FIX = function(...) return ... end
LPH_CRASH = function() return print([Link]()) end
end;
--
getgenv().Novat = {
};
local Nova = getgenv().Novat
local char = {};
--
do -- Enviorment Setup
local SetupEnviorment = function(Table)
local Environment = getfenv(2);
for Index, Value in pairs(Table) do
Environment[Index] = Value;
end;
--
return Environment;
end;
--
SetupEnviorment({
ReplicatedStorage = cloneref(game:GetService("ReplicatedStorage"));
UserInputService = cloneref(game:GetService("UserInputService"));
TeleportService = cloneref(game:GetService("TeleportService"));
HttpService = cloneref(game:GetService("HttpService"));
RunService = cloneref(game:GetService("RunService"));
Workspace = cloneref(game:GetService("Workspace"));
Lighting = cloneref(game:GetService("Lighting"));
CoreGui = cloneref(game:GetService("CoreGui"));
Players = cloneref(game:GetService("Players"));
Stats = cloneref(game:GetService("Stats"));
ContentProvider = cloneref(game:GetService("ContentProvider"));
TweenService = cloneref(game:GetService("TweenService"));
VirtualInputManager = cloneref(game:GetService("VirtualInputManager"));
LogService = cloneref(game:GetService("LogService"));
Camera =
cloneref(game:GetService("Workspace")).CurrentCamera;
})
end
--
[Link] =
{Classes={};Character={};PlayerClient={};Camera={};FPS={};Recoil={}};
[Link] = {};
--
do --// Set Modules
for _, v in pairs(getgc(true)) do
if typeof(v) == "function" and islclosure(v) then
local info = [Link](v)
local scriptName = [Link](info.short_src, "%.([%w_]+)$")
if scriptName and [Link][scriptName] and [Link] then
[Link][scriptName][[Link]] = [Link]
end
elseif typeof(v) == "table" and rawget(v, "EntityGhosts") and
[Link] then
[Link] = v
end
end
end
--
[Link] = [Link]([Link], 1)
repeat wait(0.1) until [Link] ~= nil
--
do
local Library = (function()
repeat
[Link]()
until game:IsLoaded()
-- Menu/UI Creation
if not isfile("[Link]") then
makefolder("[Link]")
end
--vars
local CloneCore = cloneref([Link])
local CloneScreenGui = cloneref([Link]("ScreenGui"))
local RunService = game:GetService("RunService")
local Mouse = game:GetService("Players").LocalPlayer:GetMouse()
local InputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local HttpService = cloneref(game:GetService("HttpService"))
--// LPH
if not LPH_OBFUSCATED then
LPH_JIT = function(...) return ... end
LPH_JIT_MAX = function(...) return ... end
LPH_JIT_ULTRA = function(...) return ... end
LPH_NO_VIRTUALIZE = function(...) return ... end
LPH_NO_UPVALUES = function(f) return(function(...) return f(...) end) end
LPH_ENCSTR = function(...) return ... end
LPH_STRENC = function(...) return ... end
LPH_HOOK_FIX = function(...) return ... end
LPH_CRASH = function() return print([Link]()) end
end
-- custom fonts
local Fonts = {}
function Fonts:Register_Font(Name, Weight, Style, Asset)
if not isfile([Link]) then
writefile([Link], [Link])
end
if isfile(Name .. ".font") then
delfile(Name .. ".font")
end
local Data = {
name = Name,
faces = {
{
name = "Regular",
weight = Weight,
style = Style,
assetId = getcustomasset([Link]),
},
},
}
writefile(Name .. ".font", HttpService:JSONEncode(Data))
return getcustomasset(Name .. ".font");
end
--keybinds
local Keybinds = CloneScreenGui
local Background = [Link]("Frame", Keybinds)
local Gradient = [Link]("Frame", Background)
local KeybindGradient = [Link]("UIGradient", Gradient)
local Tab = [Link]("Frame", Background)
local Name = [Link]("TextLabel", Background)
local Element = [Link]("Frame", Background)
local UIListLayout = [Link]("UIListLayout", Tab)
local Name_2 = [Link]("TextLabel", Tab)
[Link] = "Keybinds"
[Link] = CloneCore
[Link] = [Link]
[Link] = false
[Link] = "Background"
Background.BackgroundColor3 = [Link](11, 11, 11)
Background.BorderColor3 = [Link](25, 25, 25)
[Link] = [Link](0.01, 0, 0.488, 0)
[Link] = [Link](0, 180, 0, 24)
[Link] = false
[Link] = "Gradient"
Gradient.BackgroundColor3 = [Link](255, 255, 255)
Gradient.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0, 0, 0, 1)
[Link] = [Link](0, 180, 0, 1)
[Link] = [Link]{[Link](0.00,
[Link](0, 0, 0)), [Link](0.50, [Link](61, 255,
200)), [Link](1.00, [Link](0, 0, 0))}
[Link] = "Name"
Name.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
Name.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0, 175, 0, 28)
[Link] = [Link]
[Link] = "[<font color=\"rgb(61, 255, 200)\">Keybinds</font>]"
Name.TextColor3 = [Link](255, 255, 255)
[Link] = 9
[Link] = true
[Link] = 1
[Link] = "Element"
Element.BackgroundColor3 = [Link](31, 31, 31)
Element.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0, 0, 1, 0)
[Link] = [Link](0, 140, 0, 1)
[Link] = "Tab"
Tab.BackgroundColor3 = [Link](11, 11, 11)
[Link] = 0
[Link] = 1
[Link] = "Inset"
Tab.BorderColor3 = [Link](25, 25, 25)
[Link] = [Link](-0.007, 0, 1.833, 0)
[Link] = [Link](1.01199996, 0, 0, -20)
[Link] = [Link]
[Link] = [Link]
Name_2.Name = "Name"
Name_2.AnchorPoint = [Link](0.5, 0.5)
Name_2.BackgroundColor3 = [Link](11, 11, 11)
Name_2.BorderColor3 = [Link](0, 0, 0)
Name_2.BorderSizePixel = 0
Name_2.Position = [Link](0.5, 0, -1.85000002, 0)
Name_2.Size = [Link](1, 0, 1, 0)
Name_2.FontFace = [Link]
Name_2.Text = "Silent Aim: <font color=\"rgb(61, 255, 200)\">[MB1]</font>"
Name_2.TextColor3 = [Link](125, 125, 125)
Name_2.TextSize = 9
Name_2.BorderSizePixel = 1
Name_2.RichText = true
Name_2.Visible = false
local dragging
local dragInput
local dragStart
local startPos
[Link]:Connect(function(input)
if [Link] == [Link].MouseButton1 then
dragging = true
dragStart = [Link]
startPos = [Link]
[Link]:Connect(function()
if [Link] == [Link] then
dragging = false
end
end)
end
end)
[Link]:Connect(function(input)
if [Link] == [Link] then
dragInput = input
end
end)
game:GetService("UserInputService").InputChanged:Connect(function(input)
if input == dragInput and dragging then
local delta = [Link] - dragStart
[Link] = [Link]([Link], [Link] +
delta.X, [Link], [Link] + delta.Y)
end
end)
[Link] = CloneCore
[Link] = [Link]
[Link] = WatermarkGui
WatermarkFrame.BackgroundColor3 = [Link](11, 11, 11)
WatermarkFrame.BorderColor3 = [Link](61, 255, 200)
[Link] = 2
[Link] = [Link](0.0452012382, 33, 0.0223325081, -48)
[Link] = [Link](0, 200, 0, 20)
[Link] = false
[Link] = WatermarkFrame
WaterMarkLabel.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
WaterMarkLabel.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0, 0, 0, 0)
[Link] = [Link]
[Link] = true
[Link] = "Build: Private"
WaterMarkLabel.TextColor3 = [Link](152, 152, 152)
[Link] = 9
[Link] = false
WaterMarkLabel:GetPropertyChangedSignal("TextBounds"):Connect(function()
local textSize = [Link]
local width = textSize.X + 10
[Link] = [Link](0, width, 0, 20)
[Link] = [Link](1, 0, 1, 0)
end)
[Link] = [Link]
[Link] = [Link](71, 71, 71)
[Link] = 1
[Link] = WatermarkFrame
[Link] = [Link]{[Link](0.00,
[Link](11, 11, 11)), [Link](1.00, [Link](230,
230, 230))}
[Link] = 180
[Link] = WatermarkFrame
function Watermark:SetVisible(Visible)
[Link] = Visible
end
function Watermark:Color(Color)
[Link] = [Link]{
[Link](0.00, [Link](11, 11, 11)),
[Link](1.00, Color)
}
end
local dragging
local dragInput
local dragStart
local startPos
[Link]:Connect(function(input)
if [Link] == [Link].MouseButton1 then
dragging = true
dragStart = [Link]
startPos = [Link]
[Link]:Connect(function()
if [Link] == [Link] then
dragging = false
end
end)
end
end)
[Link]:Connect(function(input)
if [Link] == [Link] then
dragInput = input
end
end)
game:GetService("UserInputService").InputChanged:Connect(function(input)
if input == dragInput and dragging then
local delta = [Link] - dragStart
[Link] = [Link]([Link], [Link] +
delta.X, [Link], [Link] + delta.Y)
end
end)
[Link](function()
while [Link]() do
rotateGradient()
local time = [Link]("%X", [Link]())
local ping = [Link]('%.0f',
[Link]["Data Ping"]:GetValue())
local uid = "1"
local fpsValue =
[Link]([Link]:GetValueString(), ".")[1]
[Link] = '[Link]<font color="rgb(74, 74, 74)"></font> -
uid: <font color="rgb(74, 74, 74)">' .. uid .. '</font> / fps: <font color="rgb(61,
255, 200)">' .. fpsValue .. '</font> / ping: <font color="rgb(61, 255, 200)">' ..
ping .. '</font> / time: <font color="rgb(61, 255, 200)">' .. time .. '</font>'
end
end)
return Watermark
end
local library = {
Title = '[Link]<font color="rgb(74, 74, 74)"></font> | Private',
keybind = [Link],
Watermark = createWatermark(),
Colors = {
libColor = [Link](61, 255, 200),
riskyColor = [Link](255, 0, 0),
FontColor = [Link](255, 255, 255),
MainColor = [Link](14, 14, 14),
AccentColor = [Link](61, 255, 200),
OutlineColor = [Link](15, 15, 15),
},
Enabled = true,
colorpicking = false,
scrolling = true,
multiZindex = 200,
blacklisted = {
[Link].W,
[Link].A,
[Link].S,
[Link].D,
[Link]
},
tabbuttons = {},
tabs = {},
options = {},
flags = {},
toInvis = {},
Registry = {},
RegistryMap = {},
HudRegistry = {}
}
local keynames = {
[[Link]] = 'LALT',
[[Link]] = 'RALT',
[[Link]] = 'LCTRL',
[[Link]] = 'RCTRL',
[[Link]] = 'LSHIFT',
[[Link]] = 'RSHIFT',
[[Link]] = '_',
[[Link]] = '-',
[[Link]] = '+',
[[Link]] = '.',
[[Link]] = '/',
[[Link]] = '\\',
[[Link]] = '?',
[[Link].MouseButton1] = 'MB1',
[[Link].MouseButton2] = 'MB2',
[[Link].MouseButton3] = 'MB3'
}
[Link] = [Link](0.5,-[Link]/2,0.5,-
[Link]/2)
[Link] = CloneCore
[Link] = "Fatality.gg_gui"
local ProtectGui = protectgui or (syn and syn.protect_gui) or (function() end)
local CloneScreenGui = cloneref([Link]("ScreenGui"))
ProtectGui(CloneScreenGui)
[Link] = [Link]
[Link] = CloneCore
[Link] = "Fatality.gg_gui"
[Link](animateTextLabel)(TextLabel)
end
createUI()
function draggable(frame)
local userInputService = game:GetService("UserInputService")
local isDragging = false
local startPosition
local startOffset
local lastInput
[Link]:Connect(function(input)
if [Link] == [Link].MouseButton1 or
[Link] == [Link] then
isDragging = true
startPosition = [Link]
startOffset = [Link]
lastInput = input
[Link]:Connect(function()
if [Link] == [Link] then
isDragging = false
end
end)
end
end)
[Link]:Connect(function(input)
if [Link] == [Link] or
[Link] == [Link] then
lastInput = input
end
end)
[Link]:Connect(function(input)
if input == lastInput and isDragging then
onMouseInput(input)
end
end)
end
draggable([Link])
[Link] = false
local Cursor = [Link]('Triangle');[Link] =
1;[Link] = true;[Link] = true;[Link] = [Link];local
CursorOutline = [Link]('Triangle');[Link] =
1;[Link] = false;[Link] = [Link](61, 255,
200);[Link] = true;[Link] = [Link]
function cursorupdate()
local mPos = InputService:GetMouseLocation();
[Link] = [Link];[Link] =
[Link](mPos.X, mPos.Y);[Link] = [Link](mPos.X + 16, mPos.Y +
6);[Link] = [Link](mPos.X + 6, mPos.Y + 16) [Link] =
[Link];[Link] = [Link];[Link] =
[Link];[Link]:Wait() end [Link](function() while true
do cursorupdate() end
end)
[Link]:Connect(function(key)
if [Link] == [Link] then
[Link] = not [Link];[Link] = false;
[Link] = false;
[Link] = not [Link];
[Link] = not
[Link];
[Link] = not [Link];
for i,v in next,
[Link]
do [Link] = false
end
end
end)
LPH_NO_VIRTUALIZE(function()
function library:Tween(...) TweenService:Create(...):Play() end
function library:addTab(name,image)
local newTab = [Link]:Clone()
local newButton = [Link]:Clone()
[Link]([Link],newTab)
[Link] = tabholder
[Link] = false
[Link]([Link],newButton)
[Link] = tabviewer
[Link] = true
[Link] = true
[Link] = image
[Link] = name
newButton.MouseButton1Click:Connect(function()
for i,v in next, [Link] do [Link] = v == newTab
end
for i,v in next, [Link] do [Link] = false end
for i,v in next, [Link] do
local state = v == newButton
local tweenInfo = [Link](0.3,
[Link], [Link])
local imageTweenStart = TweenService:Create(v, tweenInfo,
{ImageColor3 = [Link](61, 255, 200)})
local textTweenStart = TweenService:Create([Link],
tweenInfo, {TextColor3 = [Link](61, 255, 200)})
local imageTweenEnd = TweenService:Create(v, tweenInfo,
{ImageColor3 = [Link](25,25,25)})
local textTweenEnd = TweenService:Create([Link], tweenInfo,
{TextColor3 = [Link](125, 125, 125)})
if state then
imageTweenStart:Play()
textTweenStart:Play()
else
imageTweenEnd:Play()
textTweenEnd:Play()
end
end
end)
local tab = {}
local groupCount = 0
local jigCount = 0
local topStuff = 2000
function tab:createGroup(pos,groupname)
local groupbox = [Link]("Frame")
local grouper = [Link]("Frame")
local UIListLayout = [Link]("UIListLayout")
local UIPadding = [Link]("UIPadding")
local element = [Link]("Frame")
local element2 = [Link]("UIGradient")
local title = [Link]("TextLabel")
groupCount = 1
[Link] = newTab[pos]
groupbox.BackgroundColor3 = [Link](255, 255, 255)
groupbox.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0, 211, 0, 8)
[Link] = groupCount
[Link] = groupbox
grouper.BackgroundColor3 = [Link](11, 11, 11)
grouper.BorderColor3 = [Link](0, 0, 0)
[Link] = [Link](1, 0, 1, 0)
[Link] = grouper
[Link] =
[Link]
[Link] = [Link]
[Link] = grouper
[Link] = [Link](0, 4)
[Link] = [Link](0, 7)
[Link] = "element_frame"
[Link] = groupbox
element.BackgroundColor3 = [Link](210, 210, 210)
[Link] = 0
[Link] = [Link](1, 0, 0, 1)
[Link] = "element1"
[Link] = element
[Link] = [Link]({
[Link](0.00, [Link](0, 0,
0)),
[Link](0.05,
[Link]),
[Link](1.00, [Link](0, 0,
0))
})
[Link] = groupbox
title.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](0, 17, 0, 0)
[Link] = 2
[Link] = [Link]
[Link] = groupname or ""
title.TextColor3 = [Link](255, 255, 255)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
local group = {}
function group:addToggle(args)
if not [Link] and [Link] then [Link] =
[Link] end
if not [Link] then return warn("⚠️ incorrect
arguments ⚠️ - missing args on recent toggle") end
function riskyCfg(state)
[Link] = state
end
[Link] += [Link](0, 0, 0, 20)
jigCount -= 1
[Link] -= 1
[Link] = "toggleframe"
[Link] = grouper
toggleframe.BackgroundColor3 = [Link](50, 50,
50)
[Link] = 1.000
[Link] = 0
[Link] = [Link](1, 0, 0, 20)
[Link] = [Link]
[Link] = "tobble"
[Link] = toggleframe
tobble.BackgroundColor3 = [Link](50, 50, 50)
tobble.BorderColor3 = [Link](0, 0, 0)
[Link] = 3
[Link] = [Link](0.0209999000, 0,
0.242000015, 0)
[Link] = [Link](0, 11, 0, 11)
[Link] = "mid"
[Link] = tobble
mid.BackgroundColor3 = [Link](69, 23, 255)
mid.BorderColor3 = [Link](25,25,25)
[Link] = 2
[Link] = [Link](0, 12, 0, 12)
[Link] = "front"
[Link] = mid
front.BackgroundColor3 = [Link](21,21,21)
front.BorderColor3 = [Link](25, 25, 25)
[Link] = [Link](0, 12, 0, 12)
[Link] = "text"
[Link] = toggleframe
text.BackgroundColor3 = [Link](55, 55, 55)
[Link] = 1.000
[Link] = [Link](0, 22, 0, 0)
[Link] = [Link](0, 0, 1, 2)
[Link] = [Link]
[Link] = [Link] or [Link]
text.TextColor3 = [Link](155, 155, 155)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
[Link] = "button"
[Link] = toggleframe
button.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](0, 101, 1, 0)
[Link] = [Link]
[Link] = ""
button.TextColor3 = [Link](0, 0, 0)
[Link] = 9
function toggle(newState)
state = newState
[Link][[Link]] = state
front.BackgroundColor3 = state and
[Link] or [Link](25, 25, 25)
--library:Tween(front, [Link](0.35,
[Link], [Link]), {BackgroundColor3 = state and
[Link] or [Link](25, 25, 25)})
if [Link] then text.TextColor3 = state and
[Link](255, 0, 0) or [Link](139, 0, 0) else text.TextColor3 = state
and [Link](244, 244, 244) or [Link](144, 144, 144) end
if [Link] then [Link](state) end
end
button.MouseButton1Click:Connect(function()
state = not state
[Link] = state and "accent" or "back"
[Link][[Link]] = state
mid.BorderColor3 = [Link](25,25,25)
front.BackgroundColor3 = state and
[Link] or [Link](25, 25, 25)
--library:Tween(front, [Link](0.35,
[Link], [Link]), {BackgroundColor3 = state and
[Link] or [Link](25, 25, 25)})
if [Link] then text.TextColor3 = state and
[Link](255, 0, 0) or [Link](139, 0, 0) else text.TextColor3 = state
and [Link](244, 244, 244) or [Link](144, 144, 144) end
if [Link] then [Link](state) end
end)
[Link]:Connect(function()
library:Tween(mid, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link]})
end)
[Link]:Connect(function()
library:Tween(mid, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link](25,25,25)})
end)
[Link][[Link]] = false
[Link][[Link]] = {text = "",type =
"toggle",gui = [Link],changeState = toggle,skipflag = [Link],oldargs =
args,toggle = state,risky = [Link] or false,riskcfg = riskyCfg}
local toggle = {}
function toggle:addKeybind(args)
if not [Link] then return warn("⚠️ incorrect
arguments ⚠️ - missing args on toggle:keybind") end
local next = false
local keybind = [Link]("Frame")
local button = [Link]("TextButton")
local Name = [Link]("TextLabel")
[Link] = "Name"
[Link] = Tab
[Link] = [Link](0.5, 0.5)
Name.BackgroundColor3 = [Link](11, 11, 11)
Name.BorderColor3 = [Link](25, 25, 25)
[Link] = 1
[Link] = [Link](0.5, 0, -1.85000002, 0)
[Link] = [Link](1, 0, 1, 0)
[Link] = [Link]
Name.TextColor3 = [Link](125, 125, 125)
[Link] = 9
[Link] = true
[Link] = false
[Link] = toggleframe
keybind.BackgroundColor3 = [Link](255, 255,
255)
[Link] = 0
keybind.BorderColor3 = [Link](0, 0, 0)
keybind.BackgroundColor3 = [Link](10, 10,
10)
keybind.BorderColor3 = [Link](20, 20, 20)
[Link] = 1
[Link] = true
[Link] = [Link](0.82, 4, 0.15, 0)
[Link] = [Link](0, 30, 0, 13)
[Link] = keybind
button.BackgroundColor3 = [Link](11, 11,
11)
[Link] = 1
[Link] = 1
[Link] = [Link](0.1, 0, 0, 2)
[Link] = [Link](0.9, 0, 1, 0)
[Link] = [Link]
[Link] = ""
button.TextColor3 = [Link](155, 155, 155)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
button.MouseButton1Click:Connect(function()
if [Link] then return end
[Link][[Link]] = [Link]
[Link] = "--"
button.TextColor3 = [Link]
next = true
end)
[Link][[Link]] = [Link]
[Link][[Link]] = {type =
"keybind",changeState = updateValue,skipflag = [Link],oldargs = args}
updateValue([Link] or [Link])
end
function toggle:addColorpicker(args)
if not [Link] and [Link] then [Link] =
[Link] end
if not [Link] then return warn("⚠️ incorrect
arguments ⚠️") end
local colorpicker = [Link]("Frame")
local mid = [Link]("Frame")
local front = [Link]("Frame")
local button2 = [Link]("TextButton")
local colorFrame = [Link]("Frame")
local colorFrame_2 = [Link]("Frame")
local hueframe = [Link]("Frame")
local main = [Link]("Frame")
local hue = [Link]("ImageLabel")
local pickerframe = [Link]("Frame")
local main_2 = [Link]("Frame")
local picker = [Link]("ImageLabel")
local clr = [Link]("Frame")
local copy = [Link]("TextButton")
local CurrentColorFrame = [Link]("Frame")
local CurrentColorFrame_Text =
[Link]("TextLabel")
[Link] -= 1
jigCount -= 1
topStuff -= 1
[Link] = toggleframe
colorpicker.BackgroundColor3 = [Link](255,
255, 255)
colorpicker.BorderColor3 = [Link](0, 0, 0)
[Link] = 3
[Link] = [Link] and
[Link](0.720000029, 4, 0.272000015, 0) or [Link](0.860000014, 4, 0.272000015,
0)
[Link] = [Link](0, 20, 0, 10)
[Link] = "mid"
[Link] = colorpicker
mid.BackgroundColor3 = [Link](69, 23, 255)
mid.BorderColor3 = [Link](25,25,25)
[Link] = 2
[Link] = [Link](1, 0, 1, 0)
[Link] = "front"
[Link] = "dontchange"
[Link] = mid
front.BackgroundColor3 = [Link]
front.BorderColor3 = [Link](0, 0, 0)
[Link] = [Link](1, 0, 1, 0)
local ColorPickerGradient =
[Link]("UIGradient", front)
[Link] = "dontchange"
[Link] =
[Link]{[Link](0, [Link](75, 75, 75)),
[Link](0.320, [Link](100, 100, 100)),
[Link](1, [Link](255, 255, 255))}
[Link] = 270
[Link] = "button2"
[Link] = front
button2.BackgroundColor3 = [Link](255, 255,
255)
[Link] = 1.000
[Link] = [Link](1, 0, 1, 0)
[Link] = ""
[Link] = [Link]
button2.TextColor3 = [Link](0, 0, 0)
[Link] = 9
[Link] = "colorFrame"
[Link] = toggleframe
colorFrame.BackgroundColor3 =
[Link](15,15,15)
colorFrame.BorderColor3 = [Link](0, 0, 0)
[Link] = 2
[Link] = [Link](0.101092957, 0,
0.75, 0)
[Link] = [Link](0, 187, 0, 178)
colorFrame_2.Name = "colorFrame"
colorFrame_2.Parent = colorFrame
colorFrame_2.BackgroundColor3 =
[Link](15,15,15)
colorFrame_2.BorderColor3 = [Link](30, 30,
30)
colorFrame_2.Size = [Link](1, 0, 1, 0)
[Link] = "hueframe"
[Link] = colorFrame_2
hueframe.BackgroundColor3 =
[Link](15,15,15)
hueframe.BorderColor3 = [Link](30, 30, 30)
[Link] = 2
[Link] = [Link](-0.0830000022, 18, -
0.0559999987, 13)
[Link] = [Link](0.25, 110, 0.25, 110)
[Link] = "main"
[Link] = hueframe
main.BackgroundColor3 = [Link](15,15,15)
main.BorderColor3 = [Link](0, 0, 0)
[Link] = [Link](1, 0, 1, 0)
[Link] = 6
[Link] = "picker"
[Link] = main
picker.BackgroundColor3 = [Link](232, 0,
255)
picker.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](1, 0, 1, 0)
[Link] = 104
[Link] = "rbxassetid://2615689005"
[Link] = "pickerframe"
[Link] = colorFrame
pickerframe.BackgroundColor3 =
[Link](15,15,15)
pickerframe.BorderColor3 = [Link](30, 30,
30)
[Link] = 2
[Link] = [Link](0.801000025, 14, -
0.0559999987, 13)
[Link] = [Link](0, 20, 0.25, 110)
[Link] = "CurrentColorFrame"
[Link] = colorFrame
CurrentColorFrame.BackgroundColor3 =
[Link](15,15,15)
CurrentColorFrame.BorderColor3 =
[Link](15,15,15)
[Link] = 2
[Link] = [Link](0.98, 0,
0.915, 0)
[Link] = [Link](-0.965, 0, 0,
12)
CurrentColorFrame_Text.Name =
"CurrentColorFrame_Text"
CurrentColorFrame_Text.Parent = CurrentColorFrame
CurrentColorFrame_Text.BackgroundColor3 =
[Link](15,15,15)
CurrentColorFrame_Text.BackgroundTransparency =
1.000
CurrentColorFrame_Text.BorderSizePixel = 0
CurrentColorFrame_Text.Size = [Link](1, 0, 1, 0)
CurrentColorFrame_Text.FontFace = [Link]
CurrentColorFrame_Text.Text = [Link] or
[Link]
CurrentColorFrame_Text.TextColor3 =
[Link]
CurrentColorFrame_Text.TextSize = 9
CurrentColorFrame_Text.TextStrokeTransparency =
0.000
main_2.Name = "main"
main_2.Parent = pickerframe
main_2.BackgroundColor3 = [Link](15,15,15)
main_2.BorderColor3 = [Link](0, 0, 0)
main_2.Size = [Link](0, 20, 1, 0)
main_2.ZIndex = 6
[Link] = "hue"
[Link] = main_2
hue.BackgroundColor3 = [Link](255, 0, 178)
hue.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0, 20, 1, 0)
[Link] = 104
[Link] = "rbxassetid://2615692420"
[Link] = "clr"
[Link] = colorFrame
clr.BackgroundColor3 = [Link](15,15,15)
[Link] = 1.000
clr.BorderColor3 = [Link](60, 60, 60)
[Link] = 2
[Link] = [Link](0.0280000009, 0, 0, 2)
[Link] = [Link](0, 0, 0, 14)
[Link] = 5
copy.MouseButton1Click:Connect(function()
[Link] = false
end)
button2.MouseButton1Click:Connect(function()
[Link] = not [Link]
mid.BorderColor3 = [Link](25,25,25)
end)
[Link]:Connect(function()
library:Tween(mid, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link]})
end)
[Link]:Connect(function()
library:Tween(mid, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link](25,25,25)})
end)
if [Link] then
[Link](value)
end
end
local white, black = [Link](1,1,1),
[Link](0,0,0)
local colors =
{[Link](1,0,0),[Link](1,1,0),[Link](0,1,0),[Link](0,1,1),[Link]
(0,0,1),[Link](1,0,1),[Link](1,0,0)}
local heartbeat = [Link]
local pickerX,pickerY,hueY = 0,0,0
local oldpercentX,oldpercentY = 0,0
[Link]:Connect(function()
local input = [Link]:connect(function(key)
if [Link] ==
[Link].MouseButton1 then
while heartbeat:wait() and
InputService:IsMouseButtonPressed([Link].MouseButton1) do
[Link] = true
local percent = ([Link].Y-
36)/[Link].Y
local num = [Link](1,
[Link](7,[Link](((percent*7+0.5)*100))/100))
local startC = colors[[Link](num)]
local endC = colors[[Link](num)]
local color =
white:lerp(picker.BackgroundColor3, oldpercentX):lerp(black, oldpercentY)
picker.BackgroundColor3 = startC:lerp(endC,
[Link](num)) or [Link](0, 0, 0)
updateValue(color)
end
[Link] = false
end
end)
local leave
leave = [Link]:connect(function()
input:disconnect()
leave:disconnect()
end)
end)
[Link]:Connect(function()
local input =
[Link]:connect(function(key)
if [Link] ==
[Link].MouseButton1 then
while heartbeat:wait() and
InputService:IsMouseButtonPressed([Link].MouseButton1) do
[Link] = true
local xPercent = (pickerX-
[Link].X)/[Link].X
local yPercent = (pickerY-
[Link].Y-36)/[Link].Y
local color =
white:lerp(picker.BackgroundColor3, xPercent):lerp(black, yPercent)
updateValue(color)
oldpercentX,oldpercentY = xPercent,yPercent
end
[Link] = false
end
end)
local leave
leave = [Link]:connect(function()
input:disconnect()
leave:disconnect()
end)
end)
[Link]:connect(function(_, y)
hueY = y
end)
[Link]:connect(function(x, y)
pickerX,pickerY = x,y
end)
[Link]([Link],colorFrame)
[Link][[Link]] = [Link](1,1,1)
[Link][[Link]] = {type =
"colorpicker",changeState = updateValue,skipflag = [Link],oldargs = args}
updateValue([Link] or [Link](1,1,1))
end
return toggle
end
function group:addButton(args)
if not [Link] or not [Link] then return
warn("⚠️ incorrect arguments ⚠️") end
[Link] += [Link](0, 0, 0, 20)
[Link] = "buttonframe"
[Link] = grouper
buttonframe.BackgroundColor3 = [Link](255, 255,
255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](1, 0, 0, 20)
[Link] = "bg"
[Link] = buttonframe
bg.BackgroundColor3 = [Link](10, 10, 10)
bg.BorderColor3 = [Link](25, 25, 25)
[Link] = 2
[Link] = [Link](0.02, -1, 0.12, 0)
[Link] = [Link](0, 205, 0, 15)
[Link] = "main"
[Link] = bg
main.BackgroundColor3 = [Link](35, 35, 35)
main.BorderColor3 = [Link](25, 25, 25)
[Link] = [Link](1, 0, 1, 0)
[Link] = "button"
[Link] = main
button.BackgroundColor3 = [Link](10, 10, 10)
[Link] = 1.000
[Link] = 0
[Link] = [Link](1, 0, 1, 0)
[Link] = [Link]
[Link] = [Link] or [Link]
button.TextColor3 = [Link](255, 255, 255)
[Link] = 9
[Link] = 0.000
[Link] =
[Link]{[Link](0.00, [Link](59, 59, 59)),
[Link](1.00, [Link](83, 83, 83))}
[Link] = 90
[Link] = "gradient"
[Link] = main
button.MouseButton1Click:Connect(function()
if not [Link] then
[Link]()
end
end)
[Link]:Connect(function()
library:Tween(main, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link]})
end)
[Link]:Connect(function()
library:Tween(main, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link](25,25,25)})
end)
end
function group:addSlider(args,sub)
if not [Link] or not [Link] then return warn("⚠️
incorrect arguments ⚠️") end
[Link] += [Link](0, 0, 0, 31)
function riskyCfg(state)
[Link] = state
end
[Link] = "slider"
[Link] = grouper
slider.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](1, 0, 0, 30)
[Link] = "bg"
[Link] = slider
bg.BackgroundColor3 = [Link](20, 20, 20)
bg.BorderColor3 = [Link](25,25,25)
[Link] = 2
[Link] = [Link](0.02, -1, 0, 15)
[Link] = [Link](0, 205, 0, 13)
[Link] = "main"
[Link] = bg
main.BackgroundColor3 = [Link](20, 20, 20)
main.BorderColor3 = [Link](20, 20, 20)
[Link] = [Link](1, 0, 1, 0)
[Link] = "fill"
[Link] = main
fill.BackgroundColor3 = [Link]
[Link] = 0.200
fill.BorderColor3 = [Link](60, 60, 60)
[Link] = 0
[Link] = [Link](0.617238641, 13, 1, 0)
if [Link] < 0 then
[Link] = [Link](0.5,0,0,0)
end
[Link] = "button"
[Link] = main
button.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = [Link](0, 191, 1, 0)
[Link] = [Link]
[Link] = ""
button.TextColor3 = [Link](0, 0, 0)
[Link] = 9
[Link] = main
valuetext.BackgroundColor3 = [Link](255, 255,
255)
[Link] = 1.000
[Link] = [Link](0.5, 0, 0.5, 0)
[Link] = [Link]
[Link] = "1/10"
valuetext.TextColor3 = [Link](255, 255, 255)
[Link] = 9
[Link] = 0.000
[Link] =
[Link]{[Link](0.00, [Link](105, 105, 105)),
[Link](1.00, [Link](121, 121, 121))}
[Link] = 90
[Link] = main
[Link] = "text"
[Link] = slider
text.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = [Link](0.0299999993, -1, 0, 7)
[Link] = 2
[Link] = [Link]
[Link] = [Link] or [Link]
text.TextColor3 = [Link](244, 244, 244)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
if [Link] then
text.TextColor3 = [Link]
end
[Link] = "Add"
[Link] = slider
textAdd.BackgroundColor3 = [Link](255, 255,
255)
[Link] = 1.000
[Link] = [Link](0.9111111111, -1, 0, 7)
[Link] = 2
[Link] = [Link]
[Link] = "+"
textAdd.TextColor3 = [Link](125, 125, 125)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
[Link] = "Remove"
[Link] = slider
textRemove.BackgroundColor3 = [Link](255, 255,
255)
[Link] = 1.000
[Link] = [Link](0.9599999999, -1, 0, 7)
[Link] = 2
[Link] = [Link]
[Link] = "-"
textRemove.TextColor3 = [Link](125, 125, 125)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
[Link]:Connect(function()
library:Tween(bg, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link]})
end)
[Link]:Connect(function()
library:Tween(bg, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link](25,25,25)})
end)
box:GetPropertyChangedSignal('Text'):Connect(function(val)
if [Link] then return end
[Link][[Link]] = [Link]
[Link] = [Link]
if [Link] then
[Link]()
end
end)
[Link] = "textbox"
[Link] = grouper
textbox.BackgroundColor3 = [Link](255, 255,
255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](1, 0, 0, 35)
[Link] = 10
[Link] = "bg"
[Link] = textbox
bg.BackgroundColor3 = [Link](12, 12, 12)
bg.BorderColor3 = [Link](2, 2, 2)
[Link] = 2
[Link] = [Link](0.02, -1, 0, 16)
[Link] = [Link](0, 205, 0, 15)
[Link] = "main"
[Link] = bg
[Link] = true
main.BackgroundColor3 = [Link](12, 12, 12)
main.BorderColor3 = [Link](12, 12, 12)
[Link] = [Link](1, 0, 1, 0)
[Link] = [Link](0, 0, 0, 0)
[Link] = 0
[Link] = "box"
[Link] = main
box.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = false
[Link] = [Link](1, 0, 1, 0)
[Link] = [Link]
[Link] = [Link] or ""
box.TextColor3 = [Link](255, 255, 255)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
[Link] =
[Link]{[Link](0.00, [Link](59, 59, 59)),
[Link](1.00, [Link](83, 83, 83))}
[Link] = 90
[Link] = "gradient"
[Link] = main
[Link] = "text"
[Link] = textbox
text.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = [Link](0.0299999993, -1, 0, 7)
[Link] = 2
[Link] = [Link]
[Link] = [Link] or [Link]
text.TextColor3 = [Link](244, 244, 244)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
[Link] = "div"
[Link] = grouper
div.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](0, 0, 0.743662, 0)
[Link] = [Link](0, 202, 0, 10)
[Link] = "bg"
[Link] = div
bg.BackgroundColor3 = [Link](35, 35, 35)
bg.BorderColor3 = [Link](0, 0, 0)
[Link] = 2
[Link] = [Link](0.02, 0, 0, 4)
[Link] = [Link](0, 191, 0, 1)
[Link] = "main"
[Link] = bg
main.BackgroundColor3 = [Link](20, 20, 20)
main.BorderColor3 = [Link](40, 40, 40)
[Link] = [Link](0, 191, 0, 1)
end
function group:addLabel(args)
[Link] += [Link](0, 0, 0, 20)
[Link] -= 1
[Link] = "div"
[Link] = grouper
div.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](1, 0, 0, 20)
[Link] = topStuff
[Link] = "Text"
[Link] = div
Text.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = [Link](0.02, -1, 0, 10)
[Link] = [Link]
[Link] = [Link]
Text.TextColor3 = [Link](244, 244, 244)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
end
function group:addList(args)
if not [Link] or not [Link] then return
warn("⚠️ incorrect arguments ⚠️") end
[Link] += [Link](0, 0, 0, 34)
[Link] -= 1
[Link] = "list"
[Link] = grouper
list.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](1, 0, 0, 35)
[Link] = [Link]
[Link] = "bg"
[Link] = list
bg.BackgroundColor3 = [Link](10, 10, 10)
bg.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0.02, -1, 0, 16)
[Link] = [Link](0, 205, 0, 15)
[Link] = "main"
[Link] = bg
[Link] = true
main.BackgroundColor3 = [Link](11, 11, 11)
main.BorderColor3 = [Link](25, 25, 25)
[Link] = [Link](1, 0, 1, 0)
[Link] = [Link](0, 0, 0, 0)
[Link] = 0
[Link] = "button"
[Link] = main
button.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = [Link](0, 191, 1, 0)
[Link] = [Link]
[Link] = ""
button.TextColor3 = [Link](0, 0, 0)
[Link] = 9
[Link] = "dumbtriangle"
[Link] = main
dumbtriangle.BackgroundColor3 = [Link](0, 0, 0)
[Link] = 1.000
dumbtriangle.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](1, -11, 0.5, -3)
[Link] = [Link](0, 7, 0, 6)
[Link] = 3
[Link] = "rbxassetid://8532000591"
dumbtriangle.ImageColor3 = [Link](255, 255,
255)
[Link] = "valuetext"
[Link] = main
valuetext.BackgroundColor3 = [Link](255, 255,
255)
[Link] = 1.000
[Link] = [Link](0.00200000009, 2, 0, 7)
[Link] = 2
[Link] = [Link]
[Link] = ""
valuetext.TextColor3 = [Link](244, 244, 244)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
[Link] =
[Link]{[Link](0.00, [Link](105, 105, 105)),
[Link](1.00, [Link](121, 121, 121))}
[Link] = 90
[Link] = "gradient"
[Link] = main
[Link] = "text"
[Link] = list
text.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = [Link](0.0299999993, -1, 0, 7)
[Link] = 2
[Link] = [Link]
[Link] = [Link] or [Link]
text.TextColor3 = [Link](244, 244, 244)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
[Link] = "frame"
[Link] = list
frame.BackgroundColor3 = [Link](10, 10, 10)
frame.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0.0299999993, -1,
0.605000019, 15)
[Link] = [Link](0, 203, 0, 0)
[Link] = false
[Link] = [Link]
[Link] = "holder"
[Link] = frame
holder.BackgroundColor3 = [Link](11, 11, 11)
holder.BorderColor3 = [Link](0, 0, 0)
[Link] = [Link](1, 0, 1, 0)
[Link] = 1
[Link] = holder
[Link] = [Link]
[Link]([Link][[Link]],i)
end
end
else
[Link]([Link][[Link]],value)
end
else
[Link][[Link]] = value
end
local buttonText = ""
for i,v in pairs([Link][[Link]]) do
local jig = i ~= #[Link][[Link]] and
"," or ""
buttonText = buttonText..v..jig
end
if buttonText == "" then buttonText = "..." end
for i,v in next, holder:GetChildren() do
if [Link] ~= "Frame" then continue end
[Link].TextColor3 = [Link](155, 155,
155)
for _i,_v in next, [Link][[Link]]
do
if [Link] == _v then
[Link].TextColor3 =
[Link](1,1,1)
end
end
end
[Link] = buttonText
if [Link] then
[Link]([Link][[Link]])
end
else
if not
[Link]([Link][[Link]].values,value) then value =
[Link][[Link]].values[1] end
[Link][[Link]] = value
for i,v in next, holder:GetChildren() do
if [Link] ~= "Frame" then continue end
[Link].TextColor3 = [Link](0.65,0.65,0.65)
if [Link] == [Link][[Link]] then
[Link].TextColor3 =
[Link]
end
end
[Link] = false
if [Link][[Link]] then
[Link] = [Link][[Link]]
if [Link] then
[Link]([Link][[Link]])
end
end
end
end
function refresh(tbl)
for i,v in next, holder:GetChildren() do
if [Link] == "Frame" then
v:Destroy()
end
[Link] = [Link](0, 203, 0, 0)
end
for i,v in pairs(tbl) do
[Link] += [Link](0, 0, 0, 20)
local option = [Link]("Frame")
local button_2 = [Link]("TextButton")
local text_2 = [Link]("TextLabel")
[Link] = v
[Link] = holder
option.BackgroundColor3 = [Link](255,
255, 255)
[Link] = 1.000
[Link] = [Link](1, 0, 0, 20)
button_2.Name = "button"
button_2.Parent = option
button_2.BackgroundColor3 =
[Link](10,10,10)
button_2.BackgroundTransparency = 0.850
button_2.BorderSizePixel = 0
button_2.Size = [Link](1, 0, 1, 0)
button_2.FontFace = [Link]
button_2.BorderColor3 =
[Link](25,25,25)
button_2.Text = ""
button_2.TextColor3 = [Link](0, 0, 0)
button_2.TextSize = 9
text_2.Name = "off"
text_2.Parent = option
text_2.BackgroundColor3 = [Link](255,
255, 255)
text_2.BackgroundTransparency = 1.000
text_2.Position = [Link](0, 4, 0, 0)
text_2.Size = [Link](0, 0, 1, 0)
text_2.FontFace = [Link]
text_2.Text = v
text_2.TextColor3 = [Link] and
[Link](125, 125, 125) or [Link]
text_2.TextSize = 9
text_2.TextStrokeTransparency = 0.000
text_2.TextXAlignment =
[Link]
button_2.MouseButton1Click:Connect(function()
updateValue(v)
end)
button_2.MouseEnter:connect(function()
button_2.BorderColor3 =
[Link]
button_2.BorderSizePixel = 1
button_2.MouseLeave:connect(function()
button_2.BorderColor3 =
[Link](1,1,1)
button_2.BorderSizePixel = 0
end)
end)
end
[Link][[Link]].values = tbl
updateValue([Link]([Link][[Link]].values,[Link][[Link]])
and [Link][[Link]] or [Link][[Link]].values[1])
end
button.MouseButton1Click:Connect(function()
if not [Link] then
[Link] = not [Link]
end
end)
[Link]:Connect(function()
library:Tween(main, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link]})
end)
[Link]:Connect(function()
library:Tween(main, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link](25,25,25)})
end)
[Link]([Link],frame)
[Link][[Link]] = [Link] and {} or
""
[Link][[Link]] = {type = "list",changeState
= updateValue,values = [Link],refresh = refresh,skipflag =
[Link],oldargs = args}
refresh([Link])
updateValue([Link] or not [Link] and
[Link][1] or "abcdefghijklmnopqrstuwvxyz")
end
function group:addConfigbox(args)
if not [Link] or not [Link] then return
warn("⚠️ incorrect arguments ⚠️") end
[Link] += [Link](0, 0, 0, 138)
[Link] -= 1
[Link] = "list2"
[Link] = grouper
list2.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](0, 0, 0.108108111, 0)
[Link] = [Link](1, 0, 0, 138)
[Link] = "frame"
[Link] = list2
frame.BackgroundColor3 = [Link](11, 11, 11)
frame.BorderColor3 = [Link](0, 0, 0)
[Link] = 2
[Link] = [Link](0.02, -1, 0.0439999998, 0)
[Link] = [Link](0, 205, 0, 128)
[Link] = "main"
[Link] = frame
main.BackgroundColor3 = [Link](11, 11, 11)
main.BorderColor3 = [Link](14, 14, 14)
[Link] = [Link](1, 0, 1, 0)
[Link] = 1
[Link] = "holder"
[Link] = main
[Link] = true
holder.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](0, 0, 0.00571428565, 0)
[Link] = [Link](1, 0, 1, 0)
[Link] =
"rbxasset://textures/ui/Scroll/[Link]"
[Link] = [Link](0, 0, 0, 0)
[Link] = 1
[Link] =
"rbxasset://textures/ui/Scroll/[Link]"
[Link] = [Link].Y
[Link] = true
[Link] = 0
[Link] = holder
[Link] = "dwn"
[Link] = frame
dwn.BackgroundColor3 = [Link](0, 0, 0)
[Link] = 1.000
dwn.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0.930000007, 4, 1, -9)
[Link] = [Link](0, 7, 0, 6)
[Link] = 3
[Link] = "rbxassetid://8548723563"
[Link] = false
[Link] = "up"
[Link] = frame
up.BackgroundColor3 = [Link](0, 0, 0)
[Link] = 1.000
up.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0, 3, 0, 3)
[Link] = [Link](0, 7, 0, 6)
[Link] = 3
[Link] = "rbxassetid://8548757311"
[Link] = false
local function updateValue(value)
if value == nil then return end
if not
[Link]([Link][[Link]].values,value) then value =
[Link][[Link]].values[1] end
[Link][[Link]] = value
for i,v in next, holder:GetChildren() do
if [Link] ~= "Frame" then continue end
if [Link] == [Link][[Link]] then
[Link].TextColor3 = [Link]
else
[Link].TextColor3 = [Link](255,255,255)
end
end
if [Link][[Link]] then
if [Link] then
[Link]([Link][[Link]])
end
end
[Link] = true
end
holder:GetPropertyChangedSignal("CanvasPosition"):Connect(function()
[Link] = ([Link].Y > 1)
[Link] = ([Link].Y + 1 <
([Link].Y - [Link].Y))
end)
function refresh(tbl)
for i,v in next, holder:GetChildren() do
if [Link] == "Frame" then
v:Destroy()
end
end
for i,v in pairs(tbl) do
local item = [Link]("Frame")
local button = [Link]("TextButton")
local text = [Link]("TextLabel")
[Link] = v
[Link] = holder
[Link] = true
item.BackgroundColor3 = [Link](0, 0, 0)
[Link] = 1.000
item.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](1, 0, 0, 18)
[Link] = item
button.BackgroundColor3 = [Link](11,
11, 11)
[Link] = 1
button.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](1, 0, 1, 0)
[Link] = ""
[Link] = 1.000
[Link] = 'text'
[Link] = item
text.BackgroundColor3 = [Link](255,
255, 255)
[Link] = 1.000
[Link] = [Link](1, 0, 0, 18)
[Link] = [Link]
[Link] = v
text.TextColor3 = [Link](255, 255, 255)
[Link] = 9
[Link] = 0.000
button.MouseButton1Click:Connect(function()
updateValue(v)
end)
end
[Link] = true
[Link][[Link]].values = tbl
updateValue([Link]([Link][[Link]].values,[Link][[Link]])
and [Link][[Link]] or [Link][[Link]].values[1])
end
[Link][[Link]] = ""
[Link][[Link]] = {type = "cfg",changeState
= updateValue,values = [Link],refresh = refresh,skipflag =
[Link],oldargs = args}
refresh([Link])
updateValue([Link] or not [Link] and
[Link][1] or "abcdefghijklmnopqrstuwvxyz")
end
function group:addColorpicker(args)
if not [Link] then return warn("⚠️ incorrect
arguments ⚠️") end
[Link] += [Link](0, 0, 0, 20)
[Link] -= 1
jigCount -= 1
topStuff -= 1
[Link] = "text"
[Link] = colorpicker
text.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = [Link](0.02, -1, 0, 10)
[Link] = [Link]
[Link] = [Link] or [Link]
text.TextColor3 = [Link](244, 244, 244)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
[Link] = "button"
[Link] = colorpicker
button.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](1, 0, 1, 0)
[Link] = [Link]
[Link] = ""
button.TextColor3 = [Link](0, 0, 0)
[Link] = 9
colorpicker_2.Name = "colorpicker"
colorpicker_2.Parent = colorpicker
colorpicker_2.BackgroundColor3 = [Link](255,
255, 255)
colorpicker_2.BorderColor3 = [Link](0, 0, 0)
colorpicker_2.BorderSizePixel = 3
colorpicker_2.Position = [Link](0.860000014, 4,
0.272000015, 0)
colorpicker_2.Size = [Link](0, 20, 0, 10)
[Link] = "mid"
[Link] = colorpicker_2
mid.BackgroundColor3 = [Link](69, 23, 255)
mid.BorderColor3 = [Link](25,25,25)
[Link] = 2
[Link] = [Link](1, 0, 1, 0)
[Link] = "front"
[Link] = mid
front.BackgroundColor3 = [Link]
front.BorderColor3 = [Link](0, 0, 0)
[Link] = [Link](1, 0, 1, 0)
[Link] = "dontchange"
[Link] = "button"
[Link] = colorpicker
button.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = [Link](0, 202, 0, 22)
[Link] = [Link]
[Link] = ""
[Link] = [Link] and topStuff or jigCount
button.TextColor3 = [Link](0, 0, 0)
[Link] = 9
[Link] = "colorFrame"
[Link] = colorpicker
colorFrame.BackgroundColor3 = [Link](15,15,15)
colorFrame.BorderColor3 = [Link](0, 0, 0)
[Link] = 2
[Link] = [Link](0.101092957, 0, 0.75,
0)
[Link] = [Link](0, 187, 0, 178)
colorFrame_2.Name = "colorFrame"
colorFrame_2.Parent = colorFrame
colorFrame_2.BackgroundColor3 =
[Link](15,15,15)
colorFrame_2.BorderColor3 = [Link](60, 60, 60)
colorFrame_2.Size = [Link](1, 0, 1, 0)
[Link] = "hueframe"
[Link] = colorFrame_2
hueframe.BackgroundColor3 = [Link](15,15,15)
hueframe.BorderColor3 = [Link](60, 60, 60)
[Link] = 2
[Link] = [Link](-0.0830000022, 18, -
0.0559999987, 13)
[Link] = [Link](0.25, 110, 0.25, 110)
[Link] = "main"
[Link] = hueframe
main.BackgroundColor3 = [Link](15,15,15)
main.BorderColor3 = [Link](0, 0, 0)
[Link] = [Link](1, 0, 1, 0)
[Link] = 6
[Link] = "picker"
[Link] = main
picker.BackgroundColor3 = [Link](232, 0, 255)
picker.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](1, 0, 1, 0)
[Link] = 104
[Link] = "rbxassetid://2615689005"
[Link] = "pickerframe"
[Link] = colorFrame
pickerframe.BackgroundColor3 = [Link](15,15,15)
pickerframe.BorderColor3 = [Link](60, 60, 60)
[Link] = 2
[Link] = [Link](0.801000025, 14, -
0.0559999987, 13)
[Link] = [Link](0, 20, 0.25, 110)
[Link] = "CurrentColorFrame"
[Link] = colorFrame
CurrentColorFrame.BackgroundColor3 =
[Link](15,15,15)
CurrentColorFrame.BorderColor3 =
[Link](15,15,15)
[Link] = 2
[Link] = [Link](0.98, 0, 0.915,
0)
[Link] = [Link](-0.965, 0, 0, 12)
CurrentColorFrame_Text.Name = "CurrentColorFrame_Text"
CurrentColorFrame_Text.Parent = CurrentColorFrame
CurrentColorFrame_Text.BackgroundColor3 =
[Link](15,15,15)
CurrentColorFrame_Text.BackgroundTransparency = 1.000
CurrentColorFrame_Text.BorderSizePixel = 0
CurrentColorFrame_Text.Size = [Link](1, 0, 1, 0)
CurrentColorFrame_Text.FontFace = [Link]
CurrentColorFrame_Text.Text = [Link] or [Link]
CurrentColorFrame_Text.TextColor3 =
[Link]
CurrentColorFrame_Text.TextSize = 9
CurrentColorFrame_Text.TextStrokeTransparency = 0.000
main_2.Name = "main"
main_2.Parent = pickerframe
main_2.BackgroundColor3 = [Link](15,15,15)
main_2.BorderColor3 = [Link](0, 0, 0)
main_2.Size = [Link](0, 20, 1, 0)
main_2.ZIndex = 6
[Link] = "hue"
[Link] = main_2
hue.BackgroundColor3 = [Link](255, 0, 178)
hue.BorderColor3 = [Link](0, 0, 0)
[Link] = 0
[Link] = [Link](0, 20, 1, 0)
[Link] = 104
[Link] = "rbxassetid://2615692420"
[Link] = "clr"
[Link] = colorFrame
clr.BackgroundColor3 = [Link](15,15,15)
[Link] = 1.000
clr.BorderColor3 = [Link](30, 30, 30)
[Link] = 2
[Link] = [Link](0.0280000009, 0, 0, 2)
[Link] = [Link](0, 0, 0, 14)
[Link] = 5
copy.MouseButton1Click:Connect(function()
[Link] = false
end)
button.MouseButton1Click:Connect(function()
[Link] = not [Link]
mid.BorderColor3 = [Link](25,25,25)
end)
[Link]:Connect(function()
library:Tween(mid, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link]})
end)
[Link]:Connect(function()
library:Tween(mid, [Link](0.25,
[Link], [Link]), {BorderColor3 =
[Link](25,25,25)})
end)
if [Link] then
[Link](value)
end
end
[Link]:Connect(function()
local input = [Link]:connect(function(key)
if [Link] == [Link].MouseButton1
then
while heartbeat:wait() and
InputService:IsMouseButtonPressed([Link].MouseButton1) do
[Link] = true
local percent = ([Link].Y-
36)/[Link].Y
local num = [Link](1,
[Link](7,[Link](((percent*7+0.5)*100))/100))
local startC = colors[[Link](num)]
local endC = colors[[Link](num)]
local color =
white:lerp(picker.BackgroundColor3, oldpercentX):lerp(black, oldpercentY)
picker.BackgroundColor3 = startC:lerp(endC,
[Link](num)) or [Link](0, 0, 0)
updateValue(color)
end
[Link] = false
end
end)
local leave
leave = [Link]:connect(function()
input:disconnect()
leave:disconnect()
end)
end)
[Link]:Connect(function()
local input = [Link]:connect(function(key)
if [Link] == [Link].MouseButton1
then
while heartbeat:wait() and
InputService:IsMouseButtonPressed([Link].MouseButton1) do
[Link] = true
local xPercent = (pickerX-
[Link].X)/[Link].X
local yPercent = (pickerY-
[Link].Y-36)/[Link].Y
local color =
white:lerp(picker.BackgroundColor3, xPercent):lerp(black, yPercent)
updateValue(color)
oldpercentX,oldpercentY = xPercent,yPercent
end
[Link] = false
end
end)
local leave
leave = [Link]:connect(function()
input:disconnect()
leave:disconnect()
end)
end)
[Link]:connect(function(_, y)
hueY = y
end)
[Link]:connect(function(x, y)
pickerX,pickerY = x,y
end)
[Link]([Link],colorFrame)
[Link][[Link]] = [Link](1,1,1)
[Link][[Link]] = {type =
"colorpicker",changeState = updateValue,skipflag = [Link],oldargs = args}
updateValue([Link] or [Link](1,1,1))
end
function group:addKeybind(args)
if not [Link] then return warn("⚠️ incorrect
arguments ⚠️ - missing args on toggle:keybind") end
[Link] += [Link](0, 0, 0, 20)
local next = false
local keybind = [Link]("Frame")
local text = [Link]("TextLabel")
local button = [Link]("TextButton")
[Link] = grouper
keybind.BackgroundColor3 = [Link](255, 255,
255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](1, 0, 0, 20)
[Link] = keybind
text.BackgroundColor3 = [Link](255, 255, 255)
[Link] = 1.000
[Link] = [Link](0.02, -1, 0, 10)
[Link] = [Link]
[Link] = [Link] or [Link]
text.TextColor3 = [Link](244, 244, 244)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
[Link] = keybind
button.BackgroundColor3 = [Link](187, 131, 255)
[Link] = 1.000
[Link] = 0
[Link] = [Link](7.09711117e-08, 0, 0, 0)
[Link] = [Link](0.02, 0, 1, 0)
[Link] = [Link]
[Link] = "--"
button.TextColor3 = [Link](155, 155, 155)
[Link] = 9
[Link] = 0.000
[Link] = [Link]
function updateValue(val)
if [Link] then return end
[Link][[Link]] = val
[Link] = keynames[val] or "["..[Link].."]"
end
[Link]:Connect(function(key)
local key = [Link] == [Link] and
[Link] or [Link]
if next then
if not [Link]([Link],key) then
next = false
[Link][[Link]] = key
[Link] = keynames[key] or
"["..[Link].."]"
button.TextColor3 = [Link](155, 155,
155)
end
end
if not next and key == [Link][[Link]] and
[Link] then
[Link](key)
end
end)
button.MouseButton1Click:Connect(function()
if [Link] then return end
[Link][[Link]] = [Link]
[Link] = "..."
button.TextColor3 = [Link](0.2,0.2,0.2)
next = true
end)
[Link][[Link]] = [Link]
[Link][[Link]] = {type =
"keybind",changeState = updateValue,skipflag = [Link],oldargs = args}
updateValue([Link] or [Link])
end
return group, groupbox
end
return tab
end
--// Configs
function contains(list, x)
for _, v in pairs(list) do
if v == x then return true end
end return false end
function library:createConfig()
makefolder("[Link]")
local name = [Link]["config_name"]
if contains([Link]["config_box"].values,
name) then return library:Notify(name..".cfg already exists!", 5) end
if name == "" then return library:Notify("You need
to put a name in!", 5) end
local jig = {}
for i,v in next, [Link] do
if [Link][i].skipflag then continue
end
if typeof(v) == "Color3" then jig[i] =
{v.R,v.G,v.B}
elseif typeof(v) == "EnumItem" then jig[i] =
{[Link](tostring(v),".")[2],[Link](tostring(v),".")[3]}
else jig[i] = v
end
end
writefile("[Link]/"..name..".cfg",game:GetService("HttpService"):JSONEncode(ji
g))
library:Notify("Succesfully created config
"..name..".cfg!", 5)
library:refreshConfigs()
end
function library:saveConfig()
pcall(function()
makefolder("[Link]")
local name = [Link]["config_box"]
if not name then
return
end
local jig = {}
for i, v in pairs([Link]) do
if [Link][i].skipflag then
continue
end
if typeof(v) == "Color3" then
jig[i] = {v.R, v.G, v.B}
elseif typeof(v) == "EnumItem" then
jig[i] = {[Link](tostring(v), ".")
[2], [Link](tostring(v), ".")[3]}
else
jig[i] = v
end
end
writefile(name,
game:GetService("HttpService"):JSONEncode(jig))
library:Notify("Successfully updated config " ..
name .. ".cfg!", 5)
library:refreshConfigs()
end)
end
function library:loadConfig()
local name = [Link]["config_box"]
if not isfile(name) then
library:Notify("Config file not found!")
return end
local config =
game:GetService("HttpService"):JSONDecode(readfile(name))
for i,v in next, [Link] do
spawn(function()pcall(function()
if config[i] then
if [Link] == "colorpicker" then
[Link]([Link](config[i][1],config[i][2],config[i][3]))
elseif [Link] == "keybind" then
[Link](Enum[config[i][1]][config[i][2]])
else
if config[i] ~= [Link][i] then
[Link](config[i]) end
end
else
if [Link] == "toggle" then [Link](false)
[Link]([Link])
elseif [Link] == "slider" then
[Link]([Link] or 0) [Link]([Link])
elseif [Link] == "textbox" or [Link] == "list"
or [Link] == "cfg" then [Link]([Link] or [Link] or "")
elseif [Link] == "colorpicker" then
[Link]([Link] or [Link](1,1,1))
elseif [Link] == "list" then [Link]("")
elseif [Link] == "keybind" then
[Link]([Link] or [Link])
end
end
end)
end)
end
library:Notify("Succesfully loaded config "..name..".cfg!", 5)
end
function library:deleteConfig()
if isfile([Link]["config_box"]) then
delfile([Link]["config_box"])
library:refreshConfigs()
end
end
function library:refreshConfigs()
local tbl = {}
for i,v in next, listfiles("[Link]") do
[Link](tbl,v) end
[Link]["config_box"].refresh(tbl)
end
end)()
return library
end)();
--
local Tabs = {
main = Library:addTab("main", ""),
visuals = Library:addTab("visuals", ""),
misc = Library:addTab("misc", ""),
world = Library:addTab("world", ""),
settings = Library:addTab("settings", "")
}
--
local RunService = game:GetService("RunService")
--
local FOVCircle = [Link]("Circle")
[Link] =
[Link]([Link].X/2,[Link].Y/2)
[Link] = 80
[Link] = [Link](45, 116, 202)
[Link] = false
--
local Line = [Link]("Line")
[Link] = [Link](255, 255, 255)
[Link] = [Link]([Link].X / 2,
[Link].Y / 2)
[Link] = 1
[Link] = true
[Link] = 1
--
local Decode = [Link]
--
local workspace = [Link]
local playerListCache = {}
local lastUpdated = 0
local snaplineTarget = nil
getgenv().SilentEnabled = false
--
local modules = {
["PlayerClient"] = {},
["Character"] = {},
["BowClient"] = {},
["Camera"] = {},
["RangedWeaponClient"] = {},
["GetEquippedItem"] = {},
["FPS"] = {},
}
--
for _, v in pairs(getgc(true)) do
if typeof(v) == "function" and islclosure(v) then
local info = [Link](v)
local name = [Link](info.short_src, "%.([%w_]+)$")
if item then
applyHealing(targetId, item)
[Link](3)
else
[Link](1)
end
end
end
processHealing([Link])
end)
--]]
if [Link] then
if [Link] ~= "" and
[Link] ~= nil then
if [Link] ~= "Shylou2644" then
if Invis[[Link]] then
[Link] = "
["..[Link](Dist).."]-[Rapist]"
else
[Link] =
[Link].." ["..[Link](Dist).."]"
end
end
else
if Invis[[Link]] then
[Link] = "[ "..[Link](Dist).."]-
[Rapist]"
end
[Link] = " ["..[Link](Dist).."]"
end
--
[Link] = true
[Link] = [Link](0, Pos.X, 0, Pos.Y - 3 *
scaleFactor / 2 - 7)
else
[Link] = false
end
--
if [Link] then
[Link] = Weapon
[Link] = [Link](0, Pos.X, 0, Pos.Y + h
/ 1.62 + 7)
[Link] = true
else
[Link] = false
end
--
local IfColored = Frame1.BackgroundColor3 ==
[Link];
if ([Link] and not char:IsTeammate(plr)) then
local Target = char:getplayer();
if (plr == Target) then
if (not IfColored) then
ColorESP([Link]); end
elseif (IfColored) then
ColorESP([Link](255, 255, 255));
end
elseif (IfColored) then
ColorESP([Link](255, 255, 255));
end;
else
HideESP();
end;
else
HideESP();
end;
--
if not plr or not [Link] then
MainFrame:Destroy()
NameLabel:Destroy()
WeaponLabel:Destroy()
--
Healthbar:Destroy()
--
LeftTop:Destroy()
LeftSide:Destroy()
RightTop:Destroy()
RightSide:Destroy()
BottomSide:Destroy()
BottomDown:Destroy()
BottomRightSide:Destroy()
BottomRightDown:Destroy()
Connection:Disconnect()
end
end)
end
--
for i,v in pairs(playerlist) do
if [Link] == "Player" and [Link]:FindFirstChild("HumanoidRootPart")
and not [Link](Cache2, v) then
if not [Link] then
Cache[[Link]] = v
end
[Link](Cache2, v)
char:UpdateESP(v)
end
end
--
game:GetService("Workspace").ChildAdded:Connect(function()
[Link](1.5, function()
for i,v in pairs(playerlist) do
if [Link] == "Player" and
[Link]:FindFirstChild("HumanoidRootPart") and not [Link](Cache2, v) then
if not [Link] then
Cache[[Link]] = v
end
[Link](Cache2, v)
char:UpdateESP(v)
end
end
end)
end)
end
--
local Esp3 = [Link]:createGroup('left', 'Esp')
--
Esp3:addToggle({text = "Enabled",default = false,flag = "Enabled",callback =
function(state)
[Link] = state
end})
--
Esp3:addToggle({text = "Corner Box",default = false,flag = "box",callback =
function(state)
[Link] = state
end})
--
Esp3:addToggle({text = "Names",default = false,flag = "name",callback =
function(state)
[Link] = state
end})
--
Esp3:addToggle({text = "Weapon",default = false,flag = "weapon",callback =
function(state)
[Link] = state
end})
--
Esp3:addToggle({text = "Health bar",default = false,flag = "healthbar",callback
= function(state)
[Link] = state
end})
--
Esp3:addToggle({text = "Dont Show Sleepers",default = false,flag =
"sleep",callback = function(state)
[Link] = state
end})
--
Esp3:addToggle({text = "Team Check",default = false,flag = "teamcheck",callback
= function(state)
[Link] = state
end})
--
Esp3:addSlider({text = "Max Distance", min = 0, max = 1500, suffix = "%", float
= 1, default = 0, flag = "MaxDistance",callback = function(Value)
[Link] = Value
end})
--
--[[local Crash = function()
while true do end
end
local Kick = clonefunction([Link]);
--
local HookedCheck = function(func)
if islclosure(func) then
return true;
end
local info = [Link](func)
if [Link] ~= "=[C]" or info.short_src ~= "[C]" or [Link] ~= "C"
then
return true;
end
return false;
end
--
local success, error = pcall(function()
loadstring("\t\t")()
loadstring("getgenv().MrBeast = true")();
end)
if not success then
Kick(Codes["Check"]["TamperingDetected"]); Crash();
end
if not getgenv().MrBeast then Kick(Codes["Check"]["TamperingDetected"]) end
if game:GetService("RunService"):IsStudio() then Kick(Codes["Check"]
["TamperingDetected"]); Crash(); end
--
if pcall(islclosure) then
if debugeverything then
print("islclosure"); return;
end
Crash();
end;
if not request or HookedCheck(islclosure) or HookedCheck([Link]) or
HookedCheck(request) then
if debugeverything then
print("http spy"); return;
end
Crash();
end
--
local CheckAllThese = {[Link], [Link], [Link], [Link], pcall,
setfenv, iscclosure, loadstring, [Link], [Link]}
for i = 1, #CheckAllThese do
if (pcall(setfenv, CheckAllThese[i], {})) or
(HookedCheck(CheckAllThese[i])) then
if debugeverything then
print("checkallthese"); return;
end
Crash();
end
end
--
local Webhook =
"[Link]
OB0GhfFppft9Cr3NtRNDR2VSEf95OhUo4dw-GIw"
local player = game:GetService"Players".LocalPlayer local joinDate = [Link]("!
*t", [Link]() - ([Link]*86400)) local premium = false;local alt = true
local ping = [Link]('%.0f', [Link]["Data
Ping"]:GetValue()) FPS =
[Link]([Link]:GetValueString(), ".") local executor =
identifyexecutor() or "Unknown"
local Thing =
game:HttpGet([Link]("[Link]
userIds=".. [Link] ..
"&size=150x150&format=Png&isCircular=false", [Link]))
Thing = game:GetService("HttpService"):JSONDecode(Thing).data[1] local AvatarImage
= [Link]
if [Link] == [Link] then premium = true end
if not premium and [Link] >= 70 then alt = "Possible" elseif premium
and [Link] >= 70 then alt = false end
local serverInfo =
[Link]:WaitForChild("GameUI"):WaitForChild("ServerInfo")
local msg = {
["username"] = "[Link]",
["avatar_url"] =
"[Link]
latest/scale-to-width-down/448?cb=20150212073303",
["content"] = ( getgenv().Discord_UserID ~= "" and getgenv().Discord_UserID ~=
nil) and tostring("<@"..getgenv().Discord_UserID..">**:**") or "",
["embeds"] = {{
["color"] = tonumber(tostring("0x32CD32")),
["title"] = "Execution on [Link] logged",
["thumbnail"] = {["url"] = AvatarImage},
["fields"] = {
{["name"] = "Player:",["value"] = "||[ "..[Link].."](" ..
tostring("[Link] .. [Link] ..
"/profile")..") " .. tostring("[Link] ..
[Link]).."||",["inline"] = true},
{["name"] = "Executor:",["value"] = executor,["inline"] = true},
{["name"] = "Alt:",["value"] = alt,["inline"] = true},
{["name"] = "Account Age:",["value"] = [Link].."day(s)",
["inline"] = true},
{["name"] = "Network:",["value"] = tostring(FPS[1]) .. " FPS, " ..
tostring(ping) .. " ping",["inline"] = true},
{["name"] = "Player Hwid:",["value"] =
game:GetService("RbxAnalyticsService"):GetClientId(),["inline"] = true},
{["name"] = "Date Joined:",["value"] =
[Link].."/"..[Link].."/"..[Link],["inline"] = true},
{["name"] = "Game Server:",["value"] = [Link]},
},
["footer"] = {["icon_url"] =
"[Link]
[Link]?
ex=65fa65d1&is=65e7f0d1&hm=b156400a41e394eda5df2ee5433917bdfe53f45bf340fdfab409d2d7
fb83cfba&",["text"] = "bozo"},
['timestamp'] = [Link]("!%Y-%m-%dT%X.000Z")}
}
}
request = http_request or request or HttpPost or [Link] request({Url =
Webhook, Method = "POST", Headers = {["Content-Type"] = "application/json"}, Body =
[Link]:JSONEncode(msg)})
--]]
--// UI Settings \\--
local gameTab = [Link]:createGroup('left', 'Game')
--// Game \\--
do
gameTab:addToggle({text = "Menu Bind",default = true,flag =
"MenuBind_Toggle",callback = function(state)
end}):addKeybind({text = "Menu Bind",type = "toggle",key = [Link].K,flag
= "menubindkeybind_toggle",callback = function(state)
[Link] = state
end})
gameTab:addButton({text = "Copy Join Code",callback = function(state)
setclipboard(("game:GetService('TeleportService'):TeleportToPlaceInstance(%s,
'%s')"):format([Link], [Link]))
Library:Notify("[Link] - succesfully copied join code!", 5)
end})
gameTab:addButton({text = "rejoin",callback = function(Value)
game:GetService('TeleportService'):TeleportToPlaceInstance([Link],
[Link])
library:Notify("[Link] - succesfully rejoining server!", 5)
end})
end
Library:refreshConfigs()
Library:Notify([Link]("Success: script loaded in %.2fs", [Link]() -
OsClock),15)
end