--[[ ██╗░░░░░██╗░░░██╗███╗░░██╗░█████╗░██████╗░░░░██╗░░░██╗██╗██████╗░ ██║░░░░░██║░░░██║████╗░██║██╔══██╗██╔══██╗░░░██║░░░██║██║██╔══██╗ ██║░░░░░██║░░░██║██╔██╗██║███████║██████╔╝░░░╚██╗░██╔╝██║██████╔╝ ██║░░░░░██║░░░██║██║╚████║██╔══██║██╔══██╗░░░░╚████╔╝░██║██╔═══╝░ ███████╗╚██████╔╝██║░╚███║██║░░██║██║░░██║██╗░░╚██╔╝░░██║██║░░░░░ ╚══════╝░╚═════╝░╚═╝░░╚══╝╚═╝░░╚═╝╚═╝░░╚═╝╚═╝░░░╚═╝░░░╚═╝╚═╝░░░░░ Last updated 18/03/24 ]] if isfile("menu_plex.font") then delfile("menu_plex.font") end writefile("ProggyClean.ttf", game:HttpGet("https://github.com/f1nobe7650/other/raw/main/ProggyClean.ttf")) -- // Custom Font do getsynasset = getcustomasset or getsynasset Font = setreadonly(Font, false); function Font:Register(Name, Weight, Style, Asset) if not isfile(Name .. ".font") then if not isfile(Asset.Id) then writefile(Asset.Id, Asset.Font); end; -- local Data = { name = Name, faces = {{ name = "Regular", weight = Weight, style = Style, assetId = getsynasset(Asset.Id); }} }; -- writefile(Name .. ".font", game:GetService("HttpService"):JSONEncode(Data)); return getsynasset(Name .. ".font"); else warn("Font already registered"); end; end; -- function Font:GetRegistry(Name) if isfile(Name .. ".font") then return getsynasset(Name .. ".font"); end; end; Font:Register("menu_plex", 400, "normal", {Id = "ProggyClean.ttf", Font = ""}); end if not LPH_OBFUSCATED then getfenv().LPH_NO_VIRTUALIZE = function(...) return (...) end; end local font = Enum.Font.Ubuntu; local Library = {}; local Library = { Open = true; Folders = { main = "test"; configs = "test/Configs"; }; Accent = Color3.fromRGB(132,108,188); Pages = {}; Sections = {}; Flags = {}; UnNamedFlags = 0; ThemeObjects = {}; Instances = {}; Holder = nil; PageHolder = nil; Gradient = nil; UIGradient = nil; CopiedColor = Color3.new(1,1,1); CopiedAlpha = 0; AllowedCharacters = { [1] = ' ', [2] = '!', [3] = '"', [4] = '#', [5] = '$', [6] = '%', [7] = '&', [8] = "'", [9] = '(', [10] = ')', [11] = '*', [12] = '+', [13] = ',', [14] = '-', [15] = '.', [16] = '/', [17] = '0', [18] = '1', [19] = '2', [20] = '3', [21] = '4', [22] = '5', [23] = '6', [24] = '7', [25] = '8', [26] = '9', [27] = ':', [28] = ';', [29] = '<', [30] = '=', [31] = '>', [32] = '?', [33] = '@', [34] = 'A', [35] = 'B', [36] = 'C', [37] = 'D', [38] = 'E', [39] = 'F', [40] = 'G', [41] = 'H', [42] = 'I', [43] = 'J', [44] = 'K', [45] = 'L', [46] = 'M', [47] = 'N', [48] = 'O', [49] = 'P', [50] = 'Q', [51] = 'R', [52] = 'S', [53] = 'T', [54] = 'U', [55] = 'V', [56] = 'W', [57] = 'X', [58] = 'Y', [59] = 'Z', [60] = '[', [61] = "\\", [62] = ']', [63] = '^', [64] = '_', [65] = '`', [66] = 'a', [67] = 'b', [68] = 'c', [69] = 'd', [70] = 'e', [71] = 'f', [72] = 'g', [73] = 'h', [74] = 'i', [75] = 'j', [76] = 'k', [77] = 'l', [78] = 'm', [79] = 'n', [80] = 'o', [81] = 'p', [82] = 'q', [83] = 'r', [84] = 's', [85] = 't', [86] = 'u', [87] = 'v', [88] = 'w', [89] = 'x', [90] = 'y', [91] = 'z', [92] = '{', [93] = '|', [94] = '}', [95] = '~' }; ShiftCharacters = { ["1"] = "!", ["2"] = "@", ["3"] = "#", ["4"] = "$", ["5"] = "%", ["6"] = "^", ["7"] = "&", ["8"] = "*", ["9"] = "(", ["0"] = ")", ["-"] = "_", ["="] = "+", ["["] = "{", ["\\"] = "|", [";"] = ":", ["'"] = "\"", [","] = "<", ["."] = ">", ["/"] = "?", ["`"] = "~" }; Keys = { [Enum.KeyCode.LeftShift] = "LShift", [Enum.KeyCode.RightShift] = "RShift", [Enum.KeyCode.LeftControl] = "LCtrl", [Enum.KeyCode.RightControl] = "RCtrl", [Enum.KeyCode.LeftAlt] = "LAlt", [Enum.KeyCode.RightAlt] = "RAlt", [Enum.KeyCode.CapsLock] = "Caps", [Enum.KeyCode.One] = "1", [Enum.KeyCode.Two] = "2", [Enum.KeyCode.Three] = "3", [Enum.KeyCode.Four] = "4", [Enum.KeyCode.Five] = "5", [Enum.KeyCode.Six] = "6", [Enum.KeyCode.Seven] = "7", [Enum.KeyCode.Eight] = "8", [Enum.KeyCode.Nine] = "9", [Enum.KeyCode.Zero] = "0", [Enum.KeyCode.KeypadOne] = "Num1", [Enum.KeyCode.KeypadTwo] = "Num2", [Enum.KeyCode.KeypadThree] = "Num3", [Enum.KeyCode.KeypadFour] = "Num4", [Enum.KeyCode.KeypadFive] = "Num5", [Enum.KeyCode.KeypadSix] = "Num6", [Enum.KeyCode.KeypadSeven] = "Num7", [Enum.KeyCode.KeypadEight] = "Num8", [Enum.KeyCode.KeypadNine] = "Num9", [Enum.KeyCode.KeypadZero] = "Num0", [Enum.KeyCode.Minus] = "-", [Enum.KeyCode.Equals] = "=", [Enum.KeyCode.Tilde] = "~", [Enum.KeyCode.LeftBracket] = "[", [Enum.KeyCode.RightBracket] = "]", [Enum.KeyCode.RightParenthesis] = ")", [Enum.KeyCode.LeftParenthesis] = "(", [Enum.KeyCode.Semicolon] = ",", [Enum.KeyCode.Quote] = "'", [Enum.KeyCode.BackSlash] = "\\", [Enum.KeyCode.Comma] = ",", [Enum.KeyCode.Period] = ".", [Enum.KeyCode.Slash] = "/", [Enum.KeyCode.Asterisk] = "*", [Enum.KeyCode.Plus] = "+", [Enum.KeyCode.Period] = ".", [Enum.KeyCode.Backquote] = "`", [Enum.UserInputType.MouseButton1] = "MB1", [Enum.UserInputType.MouseButton2] = "MB2", [Enum.UserInputType.MouseButton3] = "MB3" }; Connections = {}; Font = Enum.Font.Ubuntu; FontSize = 12; Notifs = {}; KeyList = nil; UIKey = Enum.KeyCode.End; ScreenGUI = nil; } local InputService = game:GetService("UserInputService"); local TeleportService = game:GetService("TeleportService"); local RunService = game:GetService("RunService"); local Workspace = game:GetService("Workspace"); local Lighting = game:GetService("Lighting"); local Players = game:GetService("Players"); local HttpService = game:GetService("HttpService"); local StarterGui = game:GetService("StarterGui"); local ReplicatedStorage = game:GetService("ReplicatedStorage"); local TweenService = game:GetService("TweenService"); local VirtualUser = game:GetService("VirtualUser"); local PathFindingService = game:GetService("PathfindingService"); local utility = { Circle = nil, bodyParts = {}, target = nil, angle = 0, drawings = {}, folders = {} }; local framework = {connections = {}}; local Flags = {}; local flags = Library.Flags; local ESP = {}; local IgnoreList = {}; local HitReg = {}; local loadingTime = tick() local Visuals = { ["Drawings"] = {}, ["Bases"] = {}, ["Base"] = {}, ["Settings"] = { ["Line"] = { Thickness = 1, Color = Color3.fromRGB(0, 255, 0) }, ["Text"] = { Size = 13, Center = true, Outline = true, Font = Drawing.Fonts.Plex, Color = Color3.fromRGB(255, 255, 255) }, ["Square"] = { Thickness = 1, Color = Color3.fromRGB(255, 255, 255), Filled = false, }, ["Triangle"] = { Color = Color3.fromRGB(255, 255, 255), Filled = true, Visible = false, Thickness = 1, }, ["Image"] = { Transparency = 1, Data = game:HttpGet("https://raw.githubusercontent.com/portallol/luna/main/Gradient.png") } }, } local NovaPart = game:GetObjects("rbxassetid://14745759584")[1]; NovaPart.Parent = ReplicatedStorage; local Nova = NovaPart.Attachment; local Sparkles = game:GetObjects("rbxassetid://16883621036")[1]; Sparkles.Parent = ReplicatedStorage; local SparklesEffect = Sparkles.LevelParticle; local sfx = {["Bameware"] = "16910460773",["Skeet"] = "4753603610",["Bonk"] = "3765689841",["Lazer Beam"] = "130791043",["Windows XP Error"] = "160715357",["TF2 Hitsound"] = "3455144981",["TF2 Critical"] = "296102734",["TF2 Bat"] = "3333907347",['Bow Hit'] = "1053296915",['Bow'] = "3442683707",['OSU'] = "7147454322",['Minecraft Hit'] = "4018616850",['Steve'] = "5869422451",['1nn'] = "7349055654",['Rust'] = "3744371091",["TF2 Pan"] = "3431749479",["Neverlose"] = "8679627751",["Mario"] = "5709456554",}; local sfx_names = {"Bameware", "Skeet", "Bonk", "Lazer Beam", "Windows XP Error", "TF2 Hitsound", "TF2 Critical", "TF2 Bat", "Bow Hit", "Bow", "OSU", "Minecraft Hit", "Steve", "1nn", "Rust", "TF2 Pan", "Neverlose", "Mario"}; local LocalPlayer = Players.LocalPlayer; local Mouse = LocalPlayer:GetMouse(); local Camera = Workspace.Camera; local viewportSize = game.Workspace.Camera.ViewportSize; local hitmodule = game:GetObjects("rbxassetid://7255773215")[1]; hitmodule.Parent = ReplicatedStorage; local Offset = game:GetService("GuiService"):GetGuiInset().Y; local Math = loadstring(game:HttpGet("https://raw.githubusercontent.com/f1nobe7650/Lynx/main/Math.lua"))(); local NotifiactionSGui = Instance.new("ScreenGui", game.CoreGui); NotifiactionSGui.Enabled = true local Remote = ReplicatedStorage.MainEvent local NewVector2 = Vector2.new; local NewVector3 = Vector3.new; local NewCFrame = CFrame.new; local Angle = CFrame.Angles; local NewHex = Color3.fromHex; local Floor = math.floor; local Random = math.random; local Find = table.find; local Round = math.round; local Cos = math.cos; local Sin = math.sin; local Rad = math.rad; local Clamp = math.clamp; local Ceil = math.ceil; local Pi = math.pi; local Sqrt = math.sqrt; local Lighting_Save = {["ColorShift_Bottom"] = Lighting.ColorShift_Bottom, ["Ambient"]=Lighting.Ambient, ["OutdoorAmbient"]=Lighting.OutdoorAmbient, ["ColorShift_Top"]=Lighting.ColorShift_Top, ["FogColor"]=Lighting.FogColor, ["FogEnd"]=Lighting.FogEnd, ["FogStart"]=Lighting.FogStart, ["ClockTime"]=Lighting.ClockTime, ["Brightness"]=Lighting.Brightness} local bodyClone = game:GetObjects("rbxassetid://8246626421")[1]; bodyClone.Humanoid:Destroy(); bodyClone.Head.Face:Destroy(); bodyClone.Parent = game.Workspace; bodyClone.HumanoidRootPart.Velocity = Vector3.new(); bodyClone.HumanoidRootPart.CFrame = NewCFrame(9999,9999,9999); bodyClone.HumanoidRootPart.Transparency = 1; bodyClone.HumanoidRootPart.CanCollide = false local visualizeChams = Instance.new("Highlight"); visualizeChams.Enabled = true; visualizeChams.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop; visualizeChams.FillColor = Color3.fromRGB(102, 60, 153); visualizeChams.OutlineColor = Color3.fromRGB(0, 0, 0); visualizeChams.Adornee = bodyClone; visualizeChams.OutlineTransparency = 0.2; visualizeChams.FillTransparency = 0.5; visualizeChams.Parent = game.CoreGui local targetHighlight = Instance.new("Highlight", game.CoreGui); targetHighlight.Enabled = true; targetHighlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop; targetHighlight.FillColor = Color3.fromRGB(0,0,0); targetHighlight.OutlineColor = Color3.fromRGB(255,255,255); targetHighlight.OutlineTransparency = 0.5; targetHighlight.FillTransparency = 0; local IgnoreList = {}; local Tween = {}; local crosshair_Lines = {}; local crosshair_Outlines = {}; local C_Desync = {Enabled = false, OldPosition = nil, PredictedPosition = nil}; local connections = {}; local highlights = {}; local Dropdowns = {}; local Pickers = {}; local VisValues = {}; local Typing = false; local aimAssistTarget; local checks; local prediction; local partClosest; local antiCheattick = 0; local CursorSize = 0; local statsTick = 0; local crosshair_LineAmount = 4; local crosshair_SpinAngle = 0; local crosshair_tick = 0; local buying = false; local PlaceHolderUI = Instance.new("ScreenGui", game.CoreGui); PlaceHolderUI.Enabled = false local Path = "https://raw.githubusercontent.com/fortniteisveryepic/assets/main/" local images = { ["[AK47]"] = game:HttpGet(Path.. "ak.png"), ["[AR]"] = game:HttpGet(Path.. "ar.png"), ["[AUG]"] = game:HttpGet(Path.. "aug.png"), ["[Double-Barrel SG]"] = game:HttpGet(Path.. "db.png"), ["[DrumGun]"] = game:HttpGet(Path.. "drumgun.png"), ["[Flamethrower]"] = game:HttpGet(Path.. "flame.png"), ["[Glock]"] = game:HttpGet(Path.. "glock.png"), ["[LMG]"] = game:HttpGet(Path.. "lmg.png"), ["[P90]"]= game:HttpGet(Path.. "p90.png"), ["[Revolver]"] = game:HttpGet(Path.. "rev.png"), ["[SMG]"] = game:HttpGet(Path.. "smg.png"), ["[Shotgun]"] = game:HttpGet(Path.. "shotgun.png"), ["[SilencerAR]"] = game:HttpGet(Path.. "ar.png"), ["[TacticalShotgun]"] = game:HttpGet(Path.. "tac.png"), ["[Knife]"] = game:HttpGet(Path.. "knife.png"), ["[Rifle]"] = game:HttpGet(Path.. "rifle.png") } local Languages = { A = {English = "A", Arabic = "أ", Albanian = "A", Japanese = "あ", Spanish = "A", Russian = "А", Chinese = "阿", Urdu = "ا", French = "A", Portuguese = "A", Hindi = "अ"}, B = {English = "B", Arabic = "ب", Albanian = "B", Japanese = "い", Spanish = "B", Russian = "Б", Chinese = "波", Urdu = "ب", French = "B", Portuguese = "B", Hindi = "ब"}, C = {English = "C", Arabic = "ت", Albanian = "C", Japanese = "う", Spanish = "C", Russian = "Ц", Chinese = "西", Urdu = "س", French = "C", Portuguese = "C", Hindi = "स"}, D = {English = "D", Arabic = "د", Albanian = "D", Japanese = "え", Spanish = "D", Russian = "Д", Chinese = "德", Urdu = "ڈ", French = "D", Portuguese = "D", Hindi = "ड"}, E = {English = "E", Arabic = "إ", Albanian = "E", Japanese = "お", Spanish = "E", Russian = "Е", Chinese = "俄", Urdu = "اے", French = "E", Portuguese = "E", Hindi = "ए"}, F = {English = "F", Arabic = "ف", Albanian = "F", Japanese = "か", Spanish = "F", Russian = "Ф", Chinese = "夫", Urdu = "ف", French = "F", Portuguese = "F", Hindi = "फ"}, G = {English = "G", Arabic = "ج", Albanian = "G", Japanese = "き", Spanish = "G", Russian = "Г", Chinese = "吉", Urdu = "ج", French = "G", Portuguese = "G", Hindi = "ग"}, H = {English = "H", Arabic = "ح", Albanian = "H", Japanese = "く", Spanish = "H", Russian = "Х", Chinese = "艾尺", Urdu = "ح", French = "H", Portuguese = "H", Hindi = "ह"}, I = {English = "I", Arabic = "ي", Albanian = "I", Japanese = "け", Spanish = "I", Russian = "И", Chinese = "伊", Urdu = "آئی", French = "I", Portuguese = "I", Hindi = "इ"}, J = {English = "J", Arabic = "ج", Albanian = "J", Japanese = "こ", Spanish = "J", Russian = "Й", Chinese = "杰", Urdu = "جے", French = "J", Portuguese = "J", Hindi = "ज"}, K = {English = "K", Arabic = "ك", Albanian = "K", Japanese = "さ", Spanish = "K", Russian = "К", Chinese = "开", Urdu = "کے", French = "K", Portuguese = "K", Hindi = "क"}, L = {English = "L", Arabic = "ل", Albanian = "L", Japanese = "し", Spanish = "L", Russian = "Л", Chinese = "艾勒", Urdu = "ل", French = "L", Portuguese = "L", Hindi = "ल"}, M = {English = "M", Arabic = "م", Albanian = "M", Japanese = "す", Spanish = "M", Russian = "М", Chinese = "艾马", Urdu = "م", French = "M", Portuguese = "M", Hindi = "म"}, N = {English = "N", Arabic = "ن", Albanian = "N", Japanese = "せ", Spanish = "N", Russian = "Н", Chinese = "艾娜", Urdu = "ن", French = "N", Portuguese = "N", Hindi = "न"}, O = {English = "O", Arabic = "أو", Albanian = "O", Japanese = "そ", Spanish = "O", Russian = "О", Chinese = "哦", Urdu = "او", French = "O", Portuguese = "O", Hindi = "ओ"}, P = {English = "P", Arabic = "ب", Albanian = "P", Japanese = "た", Spanish = "P", Russian = "П", Chinese = "屁", Urdu = "پ", French = "P", Portuguese = "P", Hindi = "प"}, Q = {English = "Q", Arabic = "ق", Albanian = "Q", Japanese = "ち", Spanish = "Q", Russian = "К", Chinese = "丘", Urdu = "ق", French = "Q", Portuguese = "Q", Hindi = "क्यू"}, R = {English = "R", Arabic = "ر", Albanian = "R", Japanese = "つ", Spanish = "R", Russian = "Р", Chinese = "艾儿", Urdu = "ر", French = "R", Portuguese = "R", Hindi = "र"}, S = {English = "S", Arabic = "س", Albanian = "S", Japanese = "て", Spanish = "S", Russian = "С", Chinese = "艾丝", Urdu = "س", French = "S", Portuguese = "S", Hindi = "एस"}, T = {English = "T", Arabic = "ت", Albanian = "T", Japanese = "と", Spanish = "T", Russian = "Т", Chinese = "提", Urdu = "ٹ", French = "T", Portuguese = "T", Hindi = "ट"}, U = {English = "U", Arabic = "أو", Albanian = "U", Japanese = "な", Spanish = "U", Russian = "У", Chinese = "优", Urdu = "یو", French = "U", Portuguese = "U", Hindi = "यू"}, V = {English = "V", Arabic = "ف", Albanian = "V", Japanese = "に", Spanish = "V", Russian = "В", Chinese = "维", Urdu = "وی", French = "V", Portuguese = "V", Hindi = "व"}, W = {English = "W", Arabic = "و", Albanian = "W", Japanese = "ぬ", Spanish = "W", Russian = "В", Chinese = "豆贝尔维", Urdu = "ڈبلیو", French = "W", Portuguese = "W", Hindi = "डब्ल्यू"}, X = {English = "X", Arabic = "إكس", Albanian = "X", Japanese = "ね", Spanish = "X", Russian = "Х", Chinese = "艾克斯", Urdu = "اکس", French = "X", Portuguese = "X", Hindi = "एक्स"}, Y = {English = "Y", Arabic = "ي", Albanian = "Y", Japanese = "の", Spanish = "Y", Russian = "У", Chinese = "伊儿", Urdu = "وائی", French = "Y", Portuguese = "Y", Hindi = "वाई"}, Z = {English = "Z", Arabic = "ز", Albanian = "Z", Japanese = "は", Spanish = "Z", Russian = "З", Chinese = "贼德", Urdu = "زیڈ", French = "Z", Portuguese = "Z", Hindi = "जेड"} } local utx = {} local Messages = {} local drawingCache = {} utility.folders["Part Chams"] = Instance.new("Folder", Workspace); utility.folders["Hit Chams"] = Instance.new("Folder", Workspace); Library.__index = Library; Library.Pages.__index = Library.Pages; Library.Sections.__index = Library.Sections; -- // Functions do -- // Library Functions do function Library:Connection(Signal, Callback) local Con = Signal:Connect(Callback) return Con end -- function Library:updateNotifsPositions(position) for i, v in pairs(Library.Notifs) do local Position = position == "Middle" and NewVector2(viewportSize.X/2 - (v["Objects"][3].TextBounds.X + 4)/2,600) or NewVector2(20, 20) game:GetService("TweenService"):Create(v.Container, TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {Position = UDim2.new(0,Position.X,0,Position.Y + (i * 25))}):Play() end end -- function Library:Notification(message, duration, color, position) local notification = {Container = nil, Objects = {}} -- local NotifContainer = Instance.new('Frame', NotifiactionSGui) local Background = Instance.new('Frame', NotifContainer) local Outline = Instance.new('Frame', Background) local UIStroke = Instance.new('UIStroke', Outline) local TextLabel = Instance.new('TextLabel', Background) local Accemt = Instance.new('Frame', Background) local Progress = Instance.new('Frame', Background) -- local Position = position == "Middle" and NewVector2(viewportSize.X/2 - (TextLabel.TextBounds.X + 4)/2, 600) or NewVector2(20, 20) -- NotifContainer.Name = "NotifContainer" NotifContainer.Position = UDim2.new(0,Position.X, 0, Position.Y) NotifContainer.Size = UDim2.new(0,TextLabel.TextBounds.X + 4,0,20) NotifContainer.BackgroundColor3 = Color3.new(1,1,1) NotifContainer.BackgroundTransparency = 1 NotifContainer.BorderSizePixel = 0 NotifContainer.BorderColor3 = Color3.new(0,0,0) NotifContainer.ZIndex = 99999999 notification.Container = NotifContainer -- Background.Name = "Background" Background.Size = UDim2.new(1,0,1,0) Background.BackgroundColor3 = Color3.new(0.0588,0.0588,0.0784) Background.BorderColor3 = Color3.new(0.1373,0.1373,0.1569) table.insert(notification.Objects, Background) -- Outline.Name = "Outline" Outline.Position = UDim2.new(0,-1,0,-1) Outline.Size = UDim2.new(1,2,1,2) Outline.BackgroundColor3 = Color3.new(1,1,1) Outline.BackgroundTransparency = 1 Outline.BorderSizePixel = 0 Outline.BorderColor3 = Color3.new(0,0,0) table.insert(notification.Objects, Outline) -- TextLabel.Name = "TextLabel" TextLabel.Position = UDim2.new(0,1,0,0) TextLabel.Size = UDim2.new(1,0,1,0) TextLabel.BackgroundColor3 = Color3.new(1,1,1) TextLabel.BackgroundTransparency = 1 TextLabel.BorderSizePixel = 0 TextLabel.BorderColor3 = Color3.new(0,0,0) TextLabel.Text = message TextLabel.TextColor3 = Color3.new(0.9216,0.9216,0.9216) TextLabel.FontFace = Font.new(Font:GetRegistry("menu_plex")) TextLabel.TextSize = Library.FontSize TextLabel.AutomaticSize = Enum.AutomaticSize.X TextLabel.TextXAlignment = Enum.TextXAlignment.Left table.insert(notification.Objects, TextLabel) -- Accemt.Name = "Accemt" Accemt.Size = UDim2.new(1,0,0,1) Accemt.BackgroundColor3 = Library.Accent Accemt.BorderSizePixel = 0 Accemt.BorderColor3 = Color3.new(0,0,0) table.insert(notification.Objects, Accemt) -- Progress.Name = "Progress" Progress.Position = UDim2.new(0,0,1,-1) Progress.Size = UDim2.new(0,0,0,1) Progress.BackgroundColor3 = Color3.new(1,0,0) Progress.BorderSizePixel = 0 Progress.BorderColor3 = Color3.new(0,0,0) table.insert(notification.Objects, Progress) if color ~= nil then Progress.BackgroundColor3 = color Accemt.BackgroundColor3 = color end function notification:remove() table.remove(Library.Notifs, table.find(Library.Notifs, notification)) Library:updateNotifsPositions(position) notification.Container:Destroy() end task.spawn(function() Background.AnchorPoint = NewVector2(1,0) local Tween1 = game:GetService("TweenService"):Create(Background, TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {AnchorPoint = NewVector2(0,0)}):Play() local Tween2 = game:GetService("TweenService"):Create(Progress, TweenInfo.new(duration or 5, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {Size = UDim2.new(1,0,0,1)}):Play() game:GetService("TweenService"):Create(Progress, TweenInfo.new(duration or 5, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {BackgroundColor3 = Color3.new(0,1,0)}):Play() task.wait(duration) game:GetService("TweenService"):Create(Background, TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {AnchorPoint = NewVector2(1,0)}):Play() for i,v in next, notification.Objects do game:GetService("TweenService"):Create(v, TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BackgroundTransparency = 1}):Play() end game:GetService("TweenService"):Create(TextLabel, TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextTransparency = 1}):Play() game:GetService("TweenService"):Create(UIStroke, TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {Transparency = 1}):Play() end) task.delay(0.25 + duration + 0.25, function() notification:remove() end) table.insert(Library.Notifs, notification) NotifContainer.Position = UDim2.new(0,Position.X,0,Position.Y + (table.find(Library.Notifs, notification) * 25)) NotifContainer.Size = UDim2.new(0,TextLabel.TextBounds.X + 4,0,18) Library:updateNotifsPositions(position) return notification end -- function Library:Disconnect(Connection) Connection:Disconnect() end -- function Library:Round(Number, Float) return Float * math.floor(Number / Float) end -- function Library.NextFlag() Library.UnNamedFlags = Library.UnNamedFlags + 1 return string.format("%.14g", Library.UnNamedFlags) end -- function Library:GetConfig() local Config = "" for Index, Value in pairs(self.Flags) do if Index ~= "ConfigConfig_List" and Index ~= "ConfigConfig_Load" and Index ~= "ConfigConfig_Save" then local Value2 = Value local Final = "" -- if typeof(Value2) == "Color3" then local hue, sat, val = Value2:ToHSV() -- Final = ("rgb(%s,%s,%s,%s)"):format(hue, sat, val, 1) elseif typeof(Value2) == "table" and Value2.Color and Value2.Transparency then local hue, sat, val = Value2.Color:ToHSV() -- Final = ("rgb(%s,%s,%s,%s)"):format(hue, sat, val, Value2.Transparency) elseif typeof(Value2) == "table" and Value.Mode then local Values = Value.current -- Final = ("key(%s,%s,%s)"):format(Values[1] or "nil", Values[2] or "nil", Value.Mode) elseif Value2 ~= nil then if typeof(Value2) == "boolean" then Value2 = ("bool(%s)"):format(tostring(Value2)) elseif typeof(Value2) == "table" then local New = "table(" -- for Index2, Value3 in pairs(Value2) do New = New .. Value3 .. "," end -- if New:sub(#New) == "," then New = New:sub(0, #New - 1) end -- Value2 = New .. ")" elseif typeof(Value2) == "string" then Value2 = ("string(%s)"):format(Value2) elseif typeof(Value2) == "number" then Value2 = ("number(%s)"):format(Value2) end -- Final = Value2 end -- Config = Config .. Index .. ": " .. tostring(Final) .. "\n" end end -- return Config end -- function Library:LoadConfig(Config) for i = 1, 10 do local Table = string.split(Config, "\n") local Table2 = {} for Index, Value in pairs(Table) do local Table3 = string.split(Value, ":") -- if Table3[1] ~= "ConfigConfig_List" and #Table3 >= 2 then local Value = Table3[2]:sub(2, #Table3[2]) -- if Value:sub(1, 3) == "rgb" then local Table4 = string.split(Value:sub(5, #Value - 1), ",") -- Value = Table4 elseif Value:sub(1, 3) == "key" then local Table4 = string.split(Value:sub(5, #Value - 1), ",") -- if Table4[1] == "nil" and Table4[2] == "nil" then Table4[1] = nil Table4[2] = nil end -- Value = Table4 elseif Value:sub(1, 4) == "bool" then local Bool = Value:sub(6, #Value - 1) -- Value = Bool == "true" elseif Value:sub(1, 5) == "table" then local Table4 = string.split(Value:sub(7, #Value - 1), ",") -- Value = Table4 elseif Value:sub(1, 6) == "string" then local String = Value:sub(8, #Value - 1) -- Value = String elseif Value:sub(1, 6) == "number" then local Number = tonumber(Value:sub(8, #Value - 1)) -- Value = Number end -- Table2[Table3[1]] = Value end end -- for i, v in pairs(Table2) do if Flags[i] then if typeof(Flags[i]) == "table" then Flags[i]:Set(v) else Flags[i](v) end end end end end -- function Library:SetOpen(bool) if typeof(bool) == 'boolean' then Library.Open = bool; Library.Holder.Visible = bool; end end; -- function Library:ChangeAccent(Color) Library.Accent = Color for obj, theme in next, Library.ThemeObjects do if theme:IsA("Frame") or theme:IsA("TextButton") then theme.BackgroundColor3 = Color elseif theme:IsA("TextLabel") then theme.TextColor3 = Color elseif theme:IsA("TextButton") and theme.BackgroundTransparency == 1 then theme.TextColor3 = Color end end end -- function Library:IsMouseOverFrame(Frame) local AbsPos, AbsSize = Frame.AbsolutePosition, Frame.AbsoluteSize; if Mouse.X >= AbsPos.X and Mouse.X <= AbsPos.X + AbsSize.X and Mouse.Y >= AbsPos.Y and Mouse.Y <= AbsPos.Y + AbsSize.Y then return true; end; end; -- function Library:KeybindList() local KeyList = {Keybinds = {}}; Library.KeyList = KeyList -- local KeyOutline = Instance.new('Frame', PlaceHolderUI) local KeyInline = Instance.new('Frame', KeyOutline) local KeyAccent = Instance.new('Frame', KeyInline) local KeyHolder = Instance.new('Frame', KeyInline) local UIListLayout = Instance.new('UIListLayout', KeyHolder) local KeyTitle = Instance.new('TextLabel', KeyInline) local LineThing = Instance.new('Frame', KeyInline) -- KeyOutline.Name = "KeyOutline" KeyOutline.Position = UDim2.new(0.01,0,0.5,0) KeyOutline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) KeyOutline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) KeyOutline.AnchorPoint = NewVector2(0.009999999776482582,0.5) KeyOutline.AutomaticSize = Enum.AutomaticSize.XY -- KeyInline.Name = "KeyInline" KeyInline.Position = UDim2.new(0,1,0,1) KeyInline.Size = UDim2.new(0,-2,0,-2) KeyInline.BackgroundColor3 = Color3.new(0.0745,0.0745,0.0745) KeyInline.BorderSizePixel = 0 KeyInline.BorderColor3 = Color3.new(0,0,0) KeyInline.AutomaticSize = Enum.AutomaticSize.XY -- KeyAccent.Name = "KeyAccent" KeyAccent.Size = UDim2.new(1,0,0,1) KeyAccent.BackgroundColor3 = Library.Accent KeyAccent.BorderSizePixel = 0 KeyAccent.BorderColor3 = Color3.new(0,0,0) -- KeyHolder.Name = "KeyHolder" KeyHolder.Position = UDim2.new(0,0,0,22) KeyHolder.BackgroundColor3 = Color3.new(1,1,1) KeyHolder.BackgroundTransparency = 1 KeyHolder.BorderSizePixel = 0 KeyHolder.BorderColor3 = Color3.new(0,0,0) KeyHolder.AutomaticSize = Enum.AutomaticSize.XY -- UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder -- KeyTitle.Name = "KeyTitle" KeyTitle.Size = UDim2.new(1,0,0,20) KeyTitle.BackgroundColor3 = Color3.new(1,1,1) KeyTitle.BackgroundTransparency = 1 KeyTitle.BorderSizePixel = 0 KeyTitle.BorderColor3 = Color3.new(0,0,0) KeyTitle.Text = "Keybinds" KeyTitle.TextColor3 = Color3.new(1,1,1) KeyTitle.FontFace = Font.new(Font:GetRegistry("menu_plex")) KeyTitle.TextSize = 12 KeyTitle.TextStrokeTransparency = 0 -- LineThing.Name = "LineThing" LineThing.Position = UDim2.new(0,0,0,20) LineThing.Size = UDim2.new(1,0,0,1) LineThing.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) LineThing.BorderSizePixel = 0 LineThing.BorderColor3 = Color3.new(0,0,0) -- Functions function KeyList:SetVisible(State) KeyOutline.Visible = State; end; -- function KeyList:NewKey(Name, Key, Mode) local KeyValue = {} -- local NewValue = Instance.new('TextLabel', KeyHolder) -- NewValue.Name = "NewValue" NewValue.Size = UDim2.new(0,0,0,15) NewValue.BackgroundColor3 = Color3.new(1,1,1) NewValue.BackgroundTransparency = 1 NewValue.BorderSizePixel = 0 NewValue.BorderColor3 = Color3.new(0,0,0) NewValue.Text = tostring(" ["..Key.."] " .. Name .. " (" .. Mode ..") ") NewValue.TextColor3 = Color3.new(1,1,1) NewValue.FontFace = Font.new(Font:GetRegistry("menu_plex")) NewValue.TextSize = 12 NewValue.AutomaticSize = Enum.AutomaticSize.X NewValue.TextXAlignment = Enum.TextXAlignment.Left NewValue.Visible = false -- function KeyValue:SetVisible(State) NewValue.Visible = State; end; -- function KeyValue:Update(NewName, NewKey, NewMode) NewValue.Text = tostring(" ["..NewName.."] " .. NewKey .. " (" .. NewMode ..") ") end; return KeyValue end; return KeyList end end -- // Color Picker Functions do function Library:NewPicker(name, default, defaultalpha, parent, count, flag, callback) -- // Instances local Icon = Instance.new('TextButton', parent) local IconInline = Instance.new('Frame', Icon) local ColorWindow = Instance.new('Frame', parent) local WindowInline = Instance.new('Frame', ColorWindow) local Color = Instance.new('TextButton', WindowInline) local Sat = Instance.new('ImageLabel', Color) local Val = Instance.new('ImageLabel', Color) local Pointer = Instance.new('Frame', Color) local Container = Instance.new('Frame', Color) local ColorOutline = Instance.new('Frame', Color) local UIStroke = Instance.new('UIStroke', ColorOutline) local Hue = Instance.new('ImageButton', Color) local HueOutline = Instance.new('Frame', Hue) local UIStroke2 = Instance.new('UIStroke', HueOutline) local Alpha = Instance.new('ImageButton', Color) local AlphaOutline = Instance.new('Frame', Alpha) local UIStroke3 = Instance.new('UIStroke', AlphaOutline) local HueSlide = Instance.new('Frame', Hue) local AlphaSlide = Instance.new('Frame', Alpha) local ModeOutline = Instance.new('Frame', parent) local ModeInline = Instance.new('Frame', ModeOutline) local UIListLayout = Instance.new('UIListLayout', ModeInline) local Hold = Instance.new('TextButton', ModeInline) local Toggle = Instance.new('TextButton', ModeInline) -- Icon.Name = "Icon" Icon.Position = UDim2.new(1, - (count * 20) - (count * 6),0.5,0) Icon.Size = UDim2.new(0,20,0,10) Icon.BackgroundColor3 = Color3.fromRGB(45,45,45) Icon.BorderColor3 = Color3.fromRGB(10,10,10) Icon.AnchorPoint = NewVector2(1,0.5) Icon.AutoButtonColor = false Icon.Text = "" -- IconInline.Name = "IconInline" IconInline.Position = UDim2.new(0,1,0,1) IconInline.Size = UDim2.new(1,-2,1,-2) IconInline.BackgroundColor3 = default IconInline.BorderSizePixel = 0 -- ColorWindow.Name = "ColorWindow" ColorWindow.Position = UDim2.new(1,-2,1,2) ColorWindow.Size = UDim2.new(0,206,0,170) ColorWindow.BackgroundColor3 = Color3.fromRGB(45,45,45) ColorWindow.BorderColor3 = Color3.fromRGB(10,10,10) ColorWindow.AnchorPoint = NewVector2(1,0) ColorWindow.ZIndex = 100 ColorWindow.Visible = false -- WindowInline.Name = "WindowInline" WindowInline.Position = UDim2.new(0,1,0,1) WindowInline.Size = UDim2.new(1,-2,1,-2) WindowInline.BackgroundColor3 = Color3.fromRGB(20,20,20) WindowInline.BorderSizePixel = 0; WindowInline.ZIndex = 100 -- Color.Name = "Color" Color.Position = UDim2.new(0,8,0,10) Color.Size = UDim2.new(0,150,0,150) Color.BackgroundColor3 = default Color.BorderColor3 = Color3.new(0,0,0) Color.Text = "" Color.TextColor3 = Color3.new(0,0,0) Color.AutoButtonColor = false Color.FontFace = Font.new(Font:GetRegistry("menu_plex")) Color.TextSize = 14 Color.ZIndex = 100 -- Sat.Name = "Sat" Sat.Size = UDim2.new(1,0,1,0) Sat.BackgroundColor3 = Color3.new(1,1,1) Sat.BackgroundTransparency = 1 Sat.BorderSizePixel = 0 Sat.BorderColor3 = Color3.new(0,0,0) Sat.Image = "http://www.roblox.com/asset/?id=14684562507" Sat.ZIndex = 100 -- Val.Name = "Val" Val.Size = UDim2.new(1,0,1,0) Val.BackgroundColor3 = Color3.new(1,1,1) Val.BackgroundTransparency = 1 Val.BorderSizePixel = 0 Val.BorderColor3 = Color3.new(0,0,0) Val.Image = "http://www.roblox.com/asset/?id=14684563800" Val.ZIndex = 100 -- Pointer.Name = "Pointer" Pointer.Position = UDim2.new(1,0,1,0) Pointer.Size = UDim2.new(0,1,0,1) Pointer.BackgroundColor3 = Color3.new(1,1,1) Pointer.BorderColor3 = Color3.new(0,0,0) Pointer.ZIndex = 100 -- Container.Name = "Container" Container.Position = UDim2.new(0,-2,1,5) Container.Size = UDim2.new(0,189,0,55) Container.BackgroundColor3 = Color3.new(1,1,1) Container.BackgroundTransparency = 1 Container.BorderColor3 = Color3.new(0,0,0) Container.ZIndex = 100 -- ColorOutline.Name = "ColorOutline" ColorOutline.Position = UDim2.new(0,-1,0,-1) ColorOutline.Size = UDim2.new(1,2,1,2) ColorOutline.BackgroundColor3 = Color3.new(1,1,1) ColorOutline.BackgroundTransparency = 1 ColorOutline.BorderSizePixel = 0 ColorOutline.BorderColor3 = Color3.new(0,0,0) ColorOutline.ZIndex = 100 -- UIStroke.Color = Color3.fromRGB(45,45,45) -- Hue.Name = "Hue" Hue.Position = UDim2.new(1,10,0,0) Hue.Size = UDim2.new(0,10,1,0) Hue.BackgroundColor3 = Color3.new(1,1,1) Hue.BorderColor3 = Color3.new(0,0,0) Hue.Image = "http://www.roblox.com/asset/?id=14684557999" Hue.AutoButtonColor = false Hue.ZIndex = 100 -- HueOutline.Name = "HueOutline" HueOutline.Position = UDim2.new(0,-1,0,-1) HueOutline.Size = UDim2.new(1,2,1,2) HueOutline.BackgroundColor3 = Color3.new(1,1,1) HueOutline.BackgroundTransparency = 1 HueOutline.BorderSizePixel = 0 HueOutline.BorderColor3 = Color3.new(0,0,0) HueOutline.ZIndex = 100 -- UIStroke2.Color = Color3.fromRGB(45,45,45) -- Alpha.Name = "Alpha" Alpha.Position = UDim2.new(1,30,0,0) Alpha.Size = UDim2.new(0,10,1,0) Alpha.BackgroundColor3 = Color3.new(1,1,1) Alpha.BorderColor3 = Color3.new(0,0,0) Alpha.Image = "http://www.roblox.com/asset/?id=14684560169" Alpha.AutoButtonColor = false Alpha.ZIndex = 100 -- AlphaOutline.Name = "AlphaOutline" AlphaOutline.Position = UDim2.new(0,-1,0,-1) AlphaOutline.Size = UDim2.new(1,2,1,2) AlphaOutline.BackgroundColor3 = Color3.new(1,1,1) AlphaOutline.BackgroundTransparency = 1 AlphaOutline.BorderSizePixel = 0 AlphaOutline.BorderColor3 = Color3.new(0,0,0) AlphaOutline.ZIndex = 100 -- UIStroke3.Color = Color3.fromRGB(45,45,45) -- HueSlide.Name = "HueSlide" HueSlide.Size = UDim2.new(1,0,0,3) HueSlide.BackgroundColor3 = Color3.new(1,1,1) HueSlide.BorderColor3 = Color3.new(0,0,0) -- AlphaSlide.Name = "AlphaSlide" AlphaSlide.Size = UDim2.new(1,0,0,3) AlphaSlide.BackgroundColor3 = Color3.new(1,1,1) AlphaSlide.BorderColor3 = Color3.new(0,0,0) AlphaSlide.ZIndex = 100 -- ModeOutline.Name = "ModeOutline" ModeOutline.Position = UDim2.new(1,65,0.5,0) ModeOutline.Size = UDim2.new(0,60,0,12) ModeOutline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) ModeOutline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) ModeOutline.AnchorPoint = NewVector2(1,0.5) ModeOutline.AutomaticSize = Enum.AutomaticSize.Y ModeOutline.Visible = false ModeOutline.ZIndex = 1020000010 -- ModeInline.Name = "ModeInline" ModeInline.Position = UDim2.new(0,1,0,1) ModeInline.Size = UDim2.new(1,-2,1,-2) ModeInline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) ModeInline.BorderSizePixel = 0 ModeInline.BorderColor3 = Color3.new(0,0,0) ModeInline.ZIndex = 100 -- UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder -- Hold.Name = "Hold" Hold.Size = UDim2.new(1,0,0,15) Hold.BackgroundColor3 = Color3.new(1,1,1) Hold.BackgroundTransparency = 1 Hold.BorderSizePixel = 0 Hold.BorderColor3 = Color3.new(0,0,0) Hold.Text = "Copy" Hold.TextColor3 = Color3.fromRGB(145,145,145) Hold.AutoButtonColor = false Hold.FontFace = Font.new(Font:GetRegistry("menu_plex")) Hold.TextSize = Library.FontSize Hold.TextStrokeTransparency = 0 Hold.ZIndex = 100 -- Toggle.Name = "Toggle" Toggle.Size = UDim2.new(1,0,0,15) Toggle.BackgroundColor3 = Color3.new(1,1,1) Toggle.BackgroundTransparency = 1 Toggle.BorderSizePixel = 0 Toggle.BorderColor3 = Color3.new(0,0,0) Toggle.Text = "Paste" Toggle.TextColor3 = Color3.fromRGB(145,145,145) Toggle.AutoButtonColor = false Toggle.FontFace = Font.new(Font:GetRegistry("menu_plex")) Toggle.TextSize = Library.FontSize Toggle.TextStrokeTransparency = 0 Toggle.ZIndex = 100 Library:Connection(Icon.MouseEnter, function() Icon.BorderColor3 = Library.Accent end) -- Library:Connection(Icon.MouseLeave, function() Icon.BorderColor3 = Color3.fromRGB(10,10,10) end) -- // Connections local mouseover = false local hue, sat, val = default:ToHSV() local hsv = default:ToHSV() local alpha = defaultalpha local oldcolor = hsv local slidingsaturation = false local slidinghue = false local slidingalpha = false local function update() local real_pos = game:GetService("UserInputService"):GetMouseLocation() local mouse_position = NewVector2(real_pos.X, real_pos.Y - 40) local relative_palette = (mouse_position - Color.AbsolutePosition) local relative_hue = (mouse_position - Hue.AbsolutePosition) local relative_opacity = (mouse_position - Alpha.AbsolutePosition) -- if slidingsaturation then sat = math.clamp(1 - relative_palette.X / Color.AbsoluteSize.X, 0, 1) val = math.clamp(1 - relative_palette.Y / Color.AbsoluteSize.Y, 0, 1) end -- if slidinghue then hue = math.clamp(relative_hue.Y / Hue.AbsoluteSize.Y, 0, 1) end -- if slidingalpha then alpha = math.clamp(relative_opacity.Y / Alpha.AbsoluteSize.Y, 0, 1) end -- edited by finobe (yes these fucking alphas crash on roexec? nice executor for $8 a week :[ ) hsv = Color3.fromHSV(hue, sat, val) Pointer.Position = UDim2.new(math.clamp(1 - sat, 0.005, 0.995), 0, math.clamp(1 - val, 0.005, 0.995), 0) Color.BackgroundColor3 = Color3.fromHSV(hue, 1, 1) Alpha.BackgroundColor3 = Color3.fromHSV(hue, 1, 1) IconInline.BackgroundColor3 = hsv HueSlide.Position = UDim2.new(0,0,math.clamp(hue, 0.005, 0.995),0) AlphaSlide.Position = UDim2.new(0,0,math.clamp(alpha, 0.005, 0.995),0) if flag then Library.Flags[flag] = {} Library.Flags[flag]["Color"] = Color3.fromRGB(hsv.r * 255, hsv.g * 255, hsv.b * 255) Library.Flags[flag]["Transparency"] = alpha end callback(Color3.fromRGB(hsv.r * 255, hsv.g * 255, hsv.b * 255), alpha) end local function set(color, a) if type(color) == "table" then a = color[4] color = Color3.fromHSV(color[1], color[2], color[3]) end if type(color) == "string" then color = Color3.fromHex(color) end local oldcolor = hsv local oldalpha = alpha hue, sat, val = color:ToHSV() alpha = a or 1 hsv = Color3.fromHSV(hue, sat, val) if hsv ~= oldcolor then IconInline.BackgroundColor3 = hsv Color.BackgroundColor3 = Color3.fromHSV(hue, 1, 1) Pointer.Position = UDim2.new(math.clamp(1 - sat, 0.005, 0.995), 0, math.clamp(1 - val, 0.005, 0.995), 0) Alpha.BackgroundColor3 = Color3.fromHSV(hue, 1, 1) HueSlide.Position = UDim2.new(0,0,math.clamp(hue, 0.005, 0.995),0) AlphaSlide.Position = UDim2.new(0,0,math.clamp(alpha, 0.005, 0.995),0) if flag then Library.Flags[flag] = {} Library.Flags[flag]["Color"] = Color3.fromRGB(hsv.r * 255, hsv.g * 255, hsv.b * 255) Library.Flags[flag]["Transparency"] = alpha end callback(Color3.fromRGB(hsv.r * 255, hsv.g * 255, hsv.b * 255), alpha) end end Flags[flag] = set set(default, defaultalpha) Sat.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then slidingsaturation = true update() end end) Sat.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then slidingsaturation = false update() end end) Hue.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then slidinghue = true update() end end) Hue.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then slidinghue = false update() end end) Alpha.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then slidingalpha = true update() end end) Alpha.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then slidingalpha = false update() end end) Library:Connection(game:GetService("UserInputService").InputChanged, function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then if slidingalpha then update() end if slidinghue then update() end if slidingsaturation then update() end end end) Icon.MouseButton1Down:Connect(function() ColorWindow.Visible = not ColorWindow.Visible parent.ZIndex = ColorWindow.Visible and 5 or 1 if slidinghue then slidinghue = false end if slidingsaturation then slidingsaturation = false end if slidingalpha then slidingalpha = false end end) Library:Connection(Icon.MouseButton2Down, function() ModeOutline.Visible = not ModeOutline.Visible end) -- Library:Connection(Hold.MouseButton1Down, function() Library.CopiedColor = hsv Library.CopiedAlpha = alpha end) -- Library:Connection(Toggle.MouseButton1Down, function() set(Library.CopiedColor or Color3.new(1,1,1), Library.CopiedAlpha or 0) end) -- Library:Connection(game:GetService("UserInputService").InputBegan, function(Input) if ModeOutline.Visible and Input.UserInputType == Enum.UserInputType.MouseButton1 then if not Library:IsMouseOverFrame(Icon) then ModeOutline.Visible = false end end end) local colorpickertypes = {} function colorpickertypes:Set(color, newalpha) set(color, newalpha) end Library:Connection(game:GetService("UserInputService").InputBegan, function(Input) if ColorWindow.Visible and Input.UserInputType == Enum.UserInputType.MouseButton1 then if not Library:IsMouseOverFrame(ColorWindow) and not Library:IsMouseOverFrame(Icon) then ColorWindow.Visible = false parent.ZIndex = 1 end end end) return colorpickertypes, ColorWindow end end -- // Doc Functions do local Pages = Library.Pages; local Sections = Library.Sections; function Library:Window(Options) local Window = { Pages = {}; Sections = {}; Elements = {}; Dragging = { false, UDim2.new(0, 0, 0, 0) }; Size = Options.Size or Options.size or UDim2.new(0, 550,0, 600); }; -- local ScreenGui = Instance.new('ScreenGui', game.CoreGui) local Outline = Instance.new('Frame', ScreenGui) local Inline = Instance.new('Frame', Outline) local Accent = Instance.new('Frame', Inline) local HolderOutline = Instance.new('Frame', Inline) local HolderInline = Instance.new('Frame', HolderOutline) local Tabs = Instance.new('Frame', HolderInline) local UIListLayout = Instance.new('UIListLayout', Tabs) local DragButton = Instance.new('TextButton', Outline) local KeybindList = Library:KeybindList() -- ScreenGui.DisplayOrder = 2 -- Outline.Name = "Outline" Outline.Position = UDim2.new(0.5,0,0.5,0) Outline.Size = Window.Size Outline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) Outline.AnchorPoint = Vector2.new(0.5,0.5) Library.Holder = Outline -- Inline.Name = "Inline" Inline.Position = UDim2.new(0,1,0,1) Inline.Size = UDim2.new(1,-2,1,-2) Inline.BackgroundColor3 = Color3.new(0.0784,0.0784,0.0784) Inline.BorderSizePixel = 0 Inline.BorderColor3 = Color3.new(0,0,0) -- Accent.Name = "Accent" Accent.Size = UDim2.new(1,0,0,1) Accent.BackgroundColor3 = Library.Accent Accent.BorderSizePixel = 0 Accent.BorderColor3 = Color3.new(0,0,0) table.insert(Library.ThemeObjects, Accent) -- HolderOutline.Name = "HolderOutline" HolderOutline.Position = UDim2.new(0,7,0,11) HolderOutline.Size = UDim2.new(1,-14,1,-18) HolderOutline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) HolderOutline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) -- HolderInline.Name = "HolderInline" HolderInline.Position = UDim2.new(0,1,0,1) HolderInline.Size = UDim2.new(1,-2,1,-2) HolderInline.BackgroundColor3 = Color3.new(0.0784,0.0784,0.0784) HolderInline.BorderSizePixel = 0 HolderInline.BorderColor3 = Color3.new(0,0,0) -- Tabs.Name = "Tabs" Tabs.Size = UDim2.new(1,0,0,22) Tabs.BackgroundColor3 = Color3.new(1,1,1) Tabs.BackgroundTransparency = 1 Tabs.BorderSizePixel = 0 Tabs.BorderColor3 = Color3.new(0,0,0) -- UIListLayout.FillDirection = Enum.FillDirection.Horizontal UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder -- DragButton.Name = "DragButton" DragButton.Size = UDim2.new(1,0,0,10) DragButton.BackgroundColor3 = Color3.new(1,1,1) DragButton.BackgroundTransparency = 1 DragButton.BorderSizePixel = 0 DragButton.BorderColor3 = Color3.new(0,0,0) DragButton.Text = "" DragButton.TextColor3 = Color3.new(0,0,0) DragButton.AutoButtonColor = false DragButton.FontFace = Font.new(Font:GetRegistry("menu_plex")) DragButton.TextSize = 14 -- // Elements Window.Elements = { TabHolder = Tabs, Holder = HolderInline } -- // Dragging Library:Connection(DragButton.MouseButton1Down, function() local Location = game:GetService("UserInputService"):GetMouseLocation() Window.Dragging[1] = true Window.Dragging[2] = UDim2.new(0, Location.X - Outline.AbsolutePosition.X, 0, Location.Y - Outline.AbsolutePosition.Y) end) Library:Connection(game:GetService("UserInputService").InputEnded, function(Input) if Input.UserInputType == Enum.UserInputType.MouseButton1 and Window.Dragging[1] then local Location = game:GetService("UserInputService"):GetMouseLocation() Window.Dragging[1] = false Window.Dragging[2] = UDim2.new(0, 0, 0, 0) end end) Library:Connection(game:GetService("UserInputService").InputChanged, function(Input) local Location = game:GetService("UserInputService"):GetMouseLocation() local ActualLocation = nil -- Dragging if Window.Dragging[1] then Outline.Position = UDim2.new( 0, Location.X - Window.Dragging[2].X.Offset + (Outline.Size.X.Offset * Outline.AnchorPoint.X), 0, Location.Y - Window.Dragging[2].Y.Offset + (Outline.Size.Y.Offset * Outline.AnchorPoint.Y) ) end end) Library:Connection(game:GetService("UserInputService").InputBegan, function(Input) if Input.KeyCode == Library.UIKey then Library:SetOpen(not Library.Open) end end) -- // Functions function Window:UpdateTabs() for Index, Page in pairs(Window.Pages) do Page.Elements.Button.Size = UDim2.new(1/#Window.Pages,0,1,0) Page:Turn(Page.Open) end end -- // Returns Library.Holder = Outline return setmetatable(Window, Library) end -- function Library:Page(Properties) if not Properties then Properties = {} end -- local Page = { Name = Properties.Name or "Page", Window = self, Open = false, Sections = {}, Elements = {}, Weapons = {}, Icons = Properties.Weapons or Properties.weapons or false, } -- local TabButton = Instance.new('TextButton', Page.Window.Elements.TabHolder) local TabAccent = Instance.new('Frame', TabButton) local TabLine = Instance.new('Frame', TabButton) local WeaponOutline = Instance.new("Frame", Page.Window.Elements.Holder) local WeaponInline = Instance.new("Frame", WeaponOutline) local UIListLayout3 = Instance.new("UIListLayout", WeaponInline) local Left = Instance.new('Frame', Page.Window.Elements.Holder) local Right = Instance.new('Frame', Page.Window.Elements.Holder) local UIListLayout = Instance.new('UIListLayout', Left) local UIListLayout_2 = Instance.new('UIListLayout', Right) Left.Name = "Left" Left.Position = UDim2.new(0,5,0,35) Left.Size = UDim2.new(0.485,-3,1,-40) Left.BackgroundColor3 = Color3.new(1,1,1) Left.BorderSizePixel = 0 Left.BackgroundTransparency = 1 Left.BorderColor3 = Color3.new(0,0,0) Left.Visible = false Left.ZIndex = 3 -- Right.Name = "Right" Right.Position = UDim2.new(1,-5,0,35) Right.Size = UDim2.new(0.485,-3,1,-40) Right.BackgroundColor3 = Color3.new(1,1,1) Right.BorderSizePixel = 0 Right.BorderColor3 = Color3.new(0,0,0) Right.AnchorPoint = Vector2.new(1,0) Right.Visible = false Right.BackgroundTransparency = 1 -- UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder UIListLayout.Padding = UDim.new(0,12) -- UIListLayout_2.SortOrder = Enum.SortOrder.LayoutOrder UIListLayout_2.Padding = UDim.new(0,12) -- TabButton.Name = "TabButton" TabButton.Size = UDim2.new(0.25,0,1,0) TabButton.BackgroundColor3 = Color3.new(1,1,1) TabButton.BackgroundTransparency = 1 TabButton.BorderSizePixel = 0 TabButton.BorderColor3 = Color3.new(0,0,0) TabButton.Text = Page.Name TabButton.TextColor3 = Color3.new(0.5686,0.5686,0.5686) TabButton.AutoButtonColor = false TabButton.FontFace = Font.new(Font:GetRegistry("menu_plex")) TabButton.TextSize = Library.FontSize TabButton.TextStrokeTransparency = 0 TabButton.LineHeight = 1.1 -- TabAccent.Name = "TabAccent" TabAccent.Size = UDim2.new(1,0,0,1) TabAccent.BackgroundColor3 = Library.Accent TabAccent.BorderSizePixel = 0 TabAccent.BorderColor3 = Color3.new(0,0,0) TabAccent.Visible = false table.insert(Library.ThemeObjects, TabAccent) -- TabLine.Name = "TabLine" TabLine.Position = UDim2.new(0,0,1,-1) TabLine.Size = UDim2.new(1,0,0,1) TabLine.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) TabLine.BorderSizePixel = 0 TabLine.BorderColor3 = Color3.new(0,0,0) WeaponOutline.Name = "WeaponOutline" WeaponOutline.BackgroundColor3 = Color3.fromRGB(45, 45, 45) WeaponOutline.BorderColor3 = Color3.fromRGB(10, 10, 10) WeaponOutline.Position = UDim2.new(0, 5, 0, 25) WeaponOutline.Size = UDim2.new(1, -10, 0, 40) WeaponOutline.Visible = false WeaponInline.Name = "WeaponInline" WeaponInline.BackgroundColor3 = Color3.fromRGB(20, 20, 20) WeaponInline.BorderColor3 = Color3.fromRGB(0, 0, 0) WeaponInline.BorderSizePixel = 0 WeaponInline.Position = UDim2.new(0, 1, 0, 1) WeaponInline.Size = UDim2.new(1, -2, 1, -2) UIListLayout3.FillDirection = Enum.FillDirection.Horizontal UIListLayout3.SortOrder = Enum.SortOrder.LayoutOrder function Page:Turn(bool) Page.Open = bool if not Page.Icons then Left.Visible = Page.Open Right.Visible = Page.Open else WeaponOutline.Visible = Page.Open for Index, Weapon in pairs(Page.Weapons) do Weapon:Turn(Weapon.Open) end end TabAccent.Visible = Page.Open TabLine.Visible = not Page.Open TabButton.TextColor3 = Page.Open and Color3.fromRGB(255,255,255) or Color3.fromRGB(145,145,145) end -- Library:Connection(TabButton.MouseButton1Down, function() if not Page.Open then Page:Turn(true) for _, Pages in pairs(Page.Window.Pages) do if Pages.Open and Pages ~= Page then Pages:Turn(false) end end end end) -- Library:Connection(TabButton.MouseEnter, function() if not Page.Open then TabButton.TextColor3 = Library.Accent end end) -- Library:Connection(TabButton.MouseLeave, function() if not Page.Open then TabButton.TextColor3 = Color3.fromRGB(145,145,145) end end) -- // Functions function Page:UpdateWeapons() for Index, Weapon in pairs(Page.Weapons) do Weapon.Elements.Button.Size = UDim2.new(1/#Page.Weapons,0,1,0) Weapon:Turn(Weapon.Open) end end -- // Elements Page.Elements = { Left = Page.Icons and nil or Left, Right = Page.Icons and nil or Right, Button = TabButton, WeaponOutline = WeaponOutline, WeaponInline = WeaponInline, } -- // Drawings if #Page.Window.Pages == 0 then Page:Turn(true) end Page.Window.Pages[#Page.Window.Pages + 1] = Page Page.Window:UpdateTabs() return setmetatable(Page, Library.Pages) end -- function Pages:Weapon(Properties) if not Properties then Properties = {} end -- local Weapon = { Icon = Properties.Icon or Properties.icon or "rbxassetid://11127408662", Window = self, Open = false, Sections = {}, Elements = {}, } -- --Weapon.Window.Elements.WeaponOutline.Visible = true local Left = Instance.new('Frame', Weapon.Window.Window.Elements.Holder) local Right = Instance.new('Frame', Weapon.Window.Window.Elements.Holder) local UIListLayout = Instance.new('UIListLayout', Left) local UIListLayout_2 = Instance.new('UIListLayout', Right) local New = Instance.new("ImageButton") -- New.Name = "New" New.Parent = Weapon.Window.Elements.WeaponInline New.BackgroundColor3 = Color3.fromRGB(255, 255, 255) New.BackgroundTransparency = 1.000 New.BorderColor3 = Color3.fromRGB(0, 0, 0) New.BorderSizePixel = 0 New.Size = UDim2.new(0.200000003, 0, 1, 0) New.Image = Weapon.Icon New.ScaleType = Enum.ScaleType.Fit -- Left.Name = "Left" Left.Position = UDim2.new(0,5,0,75) Left.Size = UDim2.new(0.485,-3,1, -80) Left.BackgroundColor3 = Color3.new(1,1,1) Left.BorderSizePixel = 0 Left.BackgroundTransparency = 1 Left.BorderColor3 = Color3.new(0,0,0) Left.Visible = false Left.ZIndex = 3 -- Right.Name = "Right" Right.Position = UDim2.new(1,-5,0,75) Right.Size = UDim2.new(0.485,-3,1, -80) Right.BackgroundColor3 = Color3.new(1,1,1) Right.BorderSizePixel = 0 Right.BorderColor3 = Color3.new(0,0,0) Right.AnchorPoint = Vector2.new(1,0) Right.Visible = false Right.BackgroundTransparency = 1 -- UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder UIListLayout.Padding = UDim.new(0,12) -- UIListLayout_2.SortOrder = Enum.SortOrder.LayoutOrder UIListLayout_2.Padding = UDim.new(0,12) function Weapon:Turn(bool) Weapon.Open = bool Left.Visible = Weapon.Open and Weapon.Window.Open Right.Visible = Weapon.Open and Weapon.Window.Open New.ImageColor3 = Weapon.Open and Color3.new(1,1,1) or Color3.fromRGB(145,145,145) end -- Library:Connection(New.MouseButton1Down, function() if not Weapon.Open then Weapon:Turn(true) for _, Weapons in pairs(Weapon.Window.Weapons) do if Weapons.Open and Weapons ~= Weapon then Weapons:Turn(false) end end end end) -- -- // Elements Weapon.Elements = { Left = Left, Right = Right, Button = New } -- // Drawings if #Weapon.Window.Weapons == 0 then Weapon:Turn(true) end Weapon.Window.Weapons[#Weapon.Window.Weapons + 1] = Weapon Weapon.Window:UpdateWeapons() return setmetatable(Weapon, Library.Pages) end -- function Pages:Section(Properties) if not Properties then Properties = {} end -- local Section = { Name = Properties.Name or "Section", Page = self, Side = (Properties.side or Properties.Side or "left"):lower(), ZIndex = Properties.ZIndex or 1, -- Idfk why Elements = {}, Content = {}, } -- local SectionOutline = Instance.new('Frame', Section.Side == "left" and Section.Page.Elements.Left or Section.Side == "right" and Section.Page.Elements.Right) local SectionInline = Instance.new('Frame', SectionOutline) local Container = Instance.new('Frame', SectionInline) local UIListLayout = Instance.new('UIListLayout', Container) local Space = Instance.new('Frame', Container) local SectionAccent = Instance.new('Frame', SectionInline) local Title = Instance.new('TextLabel', SectionOutline) local TextBorder = Instance.new('Frame', SectionOutline) -- SectionOutline.Name = "SectionOutline" SectionOutline.Size = UDim2.new(1,0,0,20) SectionOutline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) SectionOutline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) SectionOutline.AutomaticSize = Enum.AutomaticSize.Y SectionOutline.ZIndex = Section.ZIndex -- -- SectionInline.Name = "SectionInline" SectionInline.Position = UDim2.new(0,1,0,1) SectionInline.Size = UDim2.new(1,-2,1,-2) SectionInline.BackgroundColor3 = Color3.new(0.0784,0.0784,0.0784) SectionInline.BorderSizePixel = 0 SectionInline.BorderColor3 = Color3.new(0,0,0) -- Container.Name = "Container" Container.Position = UDim2.new(0,7,0,10) Container.Size = UDim2.new(1,-14,1,-10) Container.BackgroundColor3 = Color3.new(1,1,1) Container.BackgroundTransparency = 1 Container.BorderSizePixel = 0 Container.BorderColor3 = Color3.new(0,0,0) Container.AutomaticSize = Enum.AutomaticSize.Y -- Space.Name = "Space" Space.Position = UDim2.new(0,0,1,0) Space.Size = UDim2.new(1,0,0,1) Space.BackgroundColor3 = Color3.new(1,1,1) Space.BackgroundTransparency = 1 Space.BorderSizePixel = 0 Space.BorderColor3 = Color3.new(0,0,0) Space.LayoutOrder = 1000 -- SectionAccent.Name = "SectionAccent" SectionAccent.Size = UDim2.new(1,0,0,1) SectionAccent.BackgroundColor3 = Library.Accent SectionAccent.BorderSizePixel = 0 SectionAccent.BorderColor3 = Color3.new(0,0,0) table.insert(Library.ThemeObjects, SectionAccent) table.insert(Library.ThemeObjects, SectionAccent) -- Title.Name = "Title" Title.Position = UDim2.new(0,10,0,-8) Title.Size = UDim2.new(0,100,0,16) Title.BackgroundColor3 = Color3.new(1,1,1) Title.BackgroundTransparency = 1 Title.BorderSizePixel = 0 Title.BorderColor3 = Color3.new(0,0,0) Title.TextColor3 = Color3.new(1,1,1) Title.FontFace = Font.new(Font:GetRegistry("menu_plex")) Title.TextSize = Library.FontSize Title.ZIndex = 3 Title.TextXAlignment = Enum.TextXAlignment.Left Title.Text = Section.Name Title.TextStrokeTransparency = 0 -- TextBorder.Name = "TextBorder" TextBorder.Position = UDim2.new(0,6,0,-2) TextBorder.Size = UDim2.new(0,Title.TextBounds.X + 8,0,4) TextBorder.BackgroundColor3 = Color3.new(0.0784,0.0784,0.0784) TextBorder.BorderSizePixel = 0 TextBorder.BorderColor3 = Color3.new(0,0,0) -- UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder UIListLayout.Padding = UDim.new(0,10) -- // Elements Section.Elements = { SectionContent = Container; SectionHolder = SectionOutline; } -- // Returning Section.Page.Sections[#Section.Page.Sections + 1] = Section wait(0.01) TextBorder.Size = UDim2.new(0,Title.TextBounds.X + 8,0,4) return setmetatable(Section, Library.Sections) end -- function Sections:Toggle(Properties) if not Properties then Properties = {} end -- local Toggle = { Window = self.Window, Page = self.Page, Section = self, Risk = Properties.Risk or false, Name = Properties.Name or "Toggle", State = ( Properties.state or Properties.State or Properties.def or Properties.Def or Properties.default or Properties.Default or false ), Callback = ( Properties.callback or Properties.Callback or Properties.callBack or Properties.CallBack or function() end ), Flag = ( Properties.flag or Properties.Flag or Properties.pointer or Properties.Pointer or Library.NextFlag() ), Toggled = false, Colorpickers = 0, } -- local NewToggle = Instance.new('TextButton', Toggle.Section.Elements.SectionContent) local Outline = Instance.new('Frame', NewToggle) local Inline = Instance.new('Frame', Outline) local Title = Instance.new('TextLabel', NewToggle) -- NewToggle.Name = "NewToggle" NewToggle.Size = UDim2.new(1,0,0,10) NewToggle.BackgroundColor3 = Color3.new(1,1,1) NewToggle.BackgroundTransparency = 1 NewToggle.BorderSizePixel = 0 NewToggle.BorderColor3 = Color3.new(0,0,0) NewToggle.Text = "" NewToggle.TextColor3 = Color3.new(0,0,0) NewToggle.AutoButtonColor = false NewToggle.FontFace = Font.new(Font:GetRegistry("menu_plex")) NewToggle.TextSize = 14 -- Outline.Name = "Outline" Outline.Size = UDim2.new(0,10,0,10) Outline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) -- Inline.Name = "Inline" Inline.Position = UDim2.new(0,1,0,1) Inline.Size = UDim2.new(1,-2,1,-2) Inline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) Inline.BorderSizePixel = 0 Inline.BorderColor3 = Color3.new(0,0,0) -- --[[local inputText = string.upper(Toggle.Name) local targetLanguage = "Chinese" -- // English, Arabic, Albanian, Japanese, Spanish, Russian, Chinese, Urdu, French, Portuguese, Hindi local translatedText = utility:TranslateString(inputText, targetLanguage)]] -- Title.Name = "Title" Title.Position = UDim2.new(0,15,0,0) Title.Size = UDim2.new(1,0,0,10) Title.BackgroundColor3 = Color3.new(1,1,1) Title.BackgroundTransparency = 1 Title.BorderSizePixel = 0 Title.BorderColor3 = Color3.new(0,0,0) Title.TextColor3 = Toggle.Risk and Color3.fromRGB(158, 158, 24) or Color3.new(0.5686,0.5686,0.5686) Title.FontFace = Font.new(Font:GetRegistry("menu_plex")) Title.TextSize = Library.FontSize Title.TextXAlignment = Enum.TextXAlignment.Left Title.Text = Toggle.Name Title.TextStrokeTransparency = 0 -- // Functions local function SetState() Toggle.Toggled = not Toggle.Toggled if Toggle.Toggled then table.insert(Library.ThemeObjects, Inline) Inline.BackgroundColor3 = Library.Accent if Toggle.Risk then Title.TextColor3 = Color3.fromRGB(227, 227, 34) else Title.TextColor3 = Color3.fromRGB(255,255,255) end else table.remove(Library.ThemeObjects, table.find(Library.ThemeObjects, Inline)) Inline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) if Toggle.Risk then Title.TextColor3 = Color3.fromRGB(158, 158, 24) else Title.TextColor3 = Color3.fromRGB(145,145,145) end end Library.Flags[Toggle.Flag] = Toggle.Toggled Toggle.Callback(Toggle.Toggled) end -- Library:Connection(NewToggle.MouseButton1Down, SetState) Library:Connection(NewToggle.MouseEnter, function() if not Toggle.Toggled then table.insert(Library.ThemeObjects, Title) Title.TextColor3 = Library.Accent end end) -- Library:Connection(NewToggle.MouseLeave, function() if not Toggle.Toggled then table.remove(Library.ThemeObjects, table.find(Library.ThemeObjects, Title)) if Toggle.Risk then Title.TextColor3 = Color3.fromRGB(158, 158, 24) else Title.TextColor3 = Color3.fromRGB(145,145,145) end else table.remove(Library.ThemeObjects, table.find(Library.ThemeObjects, Title)) end end) function Toggle:Keybind(Properties) local Properties = Properties or {} local Keybind = { Section = self, State = ( Properties.state or Properties.State or Properties.def or Properties.Def or Properties.default or Properties.Default or nil ), Mode = (Properties.mode or Properties.Mode or "Toggle"), Callback = ( Properties.callback or Properties.Callback or Properties.callBack or Properties.CallBack or function() end ), Flag = ( Properties.flag or Properties.Flag or Properties.pointer or Properties.Pointer or Library.NextFlag() ), Name = Properties.name or Properties.Name or "Keybind", Binding = nil, } local Key local State = false -- local Outline = Instance.new('TextButton', NewToggle) local Inline = Instance.new('Frame', Outline) local Value = Instance.new('TextLabel', Inline) local ModeOutline = Instance.new('Frame', NewToggle) local ModeInline = Instance.new('Frame', ModeOutline) local UIListLayout = Instance.new('UIListLayout', ModeInline) local Hold = Instance.new('TextButton', ModeInline) local Toggle = Instance.new('TextButton', ModeInline) local Always = Instance.new('TextButton', ModeInline) local ListValue = Library.KeyList:NewKey(tostring(Keybind.State):gsub("Enum.KeyCode.", ""), Title.Text, Keybind.Mode) -- Outline.Name = "Outline" Outline.Position = UDim2.new(1,0,0.5,0) Outline.Size = UDim2.new(0,40,0,12) Outline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) Outline.AnchorPoint = NewVector2(1,0.5) Outline.Text = "" Outline.AutoButtonColor = false -- Inline.Name = "Inline" Inline.Position = UDim2.new(0,1,0,1) Inline.Size = UDim2.new(1,-2,1,-2) Inline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) Inline.BorderSizePixel = 0 Inline.BorderColor3 = Color3.new(0,0,0) -- Value.Name = "Value" Value.Size = UDim2.new(1,0,1,0) Value.BackgroundColor3 = Color3.new(1,1,1) Value.BackgroundTransparency = 1 Value.BorderSizePixel = 0 Value.BorderColor3 = Color3.new(0,0,0) Value.Text = "MB2" Value.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Value.FontFace = Font.new(Font:GetRegistry("menu_plex")) Value.TextSize = Library.FontSize Value.TextStrokeTransparency = 0 -- ModeOutline.Name = "ModeOutline" ModeOutline.Position = UDim2.new(1,65,0.5,0) ModeOutline.Size = UDim2.new(0,60,0,12) ModeOutline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) ModeOutline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) ModeOutline.AnchorPoint = NewVector2(1,0.5) ModeOutline.AutomaticSize = Enum.AutomaticSize.Y ModeOutline.Visible = false -- ModeInline.Name = "ModeInline" ModeInline.Position = UDim2.new(0,1,0,1) ModeInline.Size = UDim2.new(1,-2,1,-2) ModeInline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) ModeInline.BorderSizePixel = 0 ModeInline.BorderColor3 = Color3.new(0,0,0) -- UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder -- Hold.Name = "Hold" Hold.Size = UDim2.new(1,0,0,15) Hold.BackgroundColor3 = Color3.new(1,1,1) Hold.BackgroundTransparency = 1 Hold.BorderSizePixel = 0 Hold.BorderColor3 = Color3.new(0,0,0) Hold.Text = "Hold" Hold.TextColor3 = Keybind.Mode == "Hold" and Color3.new(1,1,1) or Color3.new(0.5686,0.5686,0.5686) Hold.AutoButtonColor = false Hold.FontFace = Font.new(Font:GetRegistry("menu_plex")) Hold.TextSize = Library.FontSize Hold.TextStrokeTransparency = 0 -- Toggle.Name = "Toggle" Toggle.Size = UDim2.new(1,0,0,15) Toggle.BackgroundColor3 = Color3.new(1,1,1) Toggle.BackgroundTransparency = 1 Toggle.BorderSizePixel = 0 Toggle.BorderColor3 = Color3.new(0,0,0) Toggle.Text = "Toggle" Toggle.TextColor3 = Keybind.Mode == "Toggle" and Color3.new(1,1,1) or Color3.new(0.5686,0.5686,0.5686) Toggle.AutoButtonColor = false Toggle.FontFace = Font.new(Font:GetRegistry("menu_plex")) Toggle.TextSize = Library.FontSize Toggle.TextStrokeTransparency = 0 -- Always.Name = "Always" Always.Size = UDim2.new(1,0,0,15) Always.BackgroundColor3 = Color3.new(1,1,1) Always.BackgroundTransparency = 1 Always.BorderSizePixel = 0 Always.BorderColor3 = Color3.new(0,0,0) Always.Text = "Always" Always.TextColor3 = Keybind.Mode == "Always" and Color3.new(1,1,1) or Color3.new(0.5686,0.5686,0.5686) Always.AutoButtonColor = false Always.FontFace = Font.new(Font:GetRegistry("menu_plex")) Always.TextSize = Library.FontSize Always.TextStrokeTransparency = 0 -- // Functions local function set(newkey) if string.find(tostring(newkey), "Enum") then if c then c:Disconnect() if Keybind.Flag then Library.Flags[Keybind.Flag] = false end Keybind.Callback(false) end if tostring(newkey):find("Enum.KeyCode.") then newkey = Enum.KeyCode[tostring(newkey):gsub("Enum.KeyCode.", "")] elseif tostring(newkey):find("Enum.UserInputType.") then newkey = Enum.UserInputType[tostring(newkey):gsub("Enum.UserInputType.", "")] end if newkey == Enum.KeyCode.Backspace then Key = nil local text = "None" Value.Text = text ListValue:Update(text, Keybind.Name, Keybind.Mode) elseif newkey ~= nil then Key = newkey local text = (Library.Keys[newkey] or tostring(newkey):gsub("Enum.KeyCode.", "")) Value.Text = text ListValue:Update(text, Keybind.Name, Keybind.Mode) end Library.Flags[Keybind.Flag .. "_KEY"] = newkey elseif table.find({ "Always", "Toggle", "Hold" }, newkey) then Library.Flags[Keybind.Flag .. "_KEY STATE"] = newkey Keybind.Mode = newkey ListValue:Update((Library.Keys[Key] or tostring(Key):gsub("Enum.KeyCode.", "")), Keybind.Name, Keybind.Mode) if Keybind.Mode == "Always" then State = true if Keybind.Flag then Library.Flags[Keybind.Flag] = State end Keybind.Callback(true) ListValue:SetVisible(true) end else State = newkey if Keybind.Flag then Library.Flags[Keybind.Flag] = newkey end Keybind.Callback(newkey) end end -- set(Keybind.State) set(Keybind.Mode) Outline.MouseButton1Click:Connect(function() if not Keybind.Binding then Value.Text = "..." Keybind.Binding = Library:Connection( game:GetService("UserInputService").InputBegan, function(input, gpe) set( input.UserInputType == Enum.UserInputType.Keyboard and input.KeyCode or input.UserInputType ) Library:Disconnect(Keybind.Binding) task.wait() Keybind.Binding = nil end ) end end) -- local HoldLoop; Library:Connection(game:GetService("UserInputService").InputBegan, function(inp, Typing) if Typing then return end if HoldLoop then HoldLoop:Disconnect() end -- if (inp.KeyCode == Key or inp.UserInputType == Key) and not Keybind.Binding then if Keybind.Mode == "Hold" then if Keybind.Flag then Library.Flags[Keybind.Flag] = true end HoldLoop = Library:Connection(game:GetService("RunService").RenderStepped, function() if Keybind.Callback then Keybind.Callback(true) end end) ListValue:SetVisible(true) elseif Keybind.Mode == "Toggle" then State = not State if Keybind.Flag then Library.Flags[Keybind.Flag] = State end Keybind.Callback(State) ListValue:SetVisible(State) end end end) -- Library:Connection(game:GetService("UserInputService").InputEnded, function(inp, Typing) if Typing then return end if Keybind.Mode == "Hold" then if Key ~= "" or Key ~= nil then if inp.KeyCode == Key or inp.UserInputType == Key then if c then c:Disconnect() if Keybind.Flag then Library.Flags[Keybind.Flag] = false end if Keybind.Callback then Keybind.Callback(false) end ListValue:SetVisible(false) end end end end end) Library:Connection(Outline.MouseEnter, function() Outline.BorderColor3 = Library.Accent end) -- Library:Connection(Outline.MouseLeave, function() Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) end) -- Library:Connection(Outline.MouseButton2Down, function() ModeOutline.Visible = not ModeOutline.Visible end) -- Library:Connection(Hold.MouseButton1Down, function() set("Hold") Hold.TextColor3 = Color3.new(1,1,1) Toggle.TextColor3 = Color3.fromRGB(145,145,145) Always.TextColor3 = Color3.fromRGB(145,145,145) end) -- Library:Connection(Toggle.MouseButton1Down, function() set("Toggle") Hold.TextColor3 = Color3.fromRGB(145,145,145) Toggle.TextColor3 = Color3.new(1,1,1) Always.TextColor3 = Color3.fromRGB(145,145,145) end) -- Library:Connection(Always.MouseButton1Down, function() set("Always") Hold.TextColor3 = Color3.fromRGB(145,145,145) Toggle.TextColor3 = Color3.fromRGB(145,145,145) Always.TextColor3 = Color3.new(1,1,1) end) -- Library:Connection(game:GetService("UserInputService").InputBegan, function(Input) if ModeOutline.Visible and Input.UserInputType == Enum.UserInputType.MouseButton1 then if not Library:IsMouseOverFrame(ModeOutline) then ModeOutline.Visible = false end end end) -- Library.Flags[Keybind.Flag .. "_KEY"] = Keybind.State Library.Flags[Keybind.Flag .. "_KEY STATE"] = Keybind.Mode Flags[Keybind.Flag] = set Flags[Keybind.Flag .. "_KEY"] = set Flags[Keybind.Flag .. "_KEY STATE"] = set -- function Keybind:Set(key) set(key) end -- // Returning return Keybind end function Toggle:Colorpicker(Properties) local Properties = Properties or {} local Colorpicker = { State = ( Properties.state or Properties.State or Properties.def or Properties.Def or Properties.default or Properties.Default or Color3.fromRGB(255, 0, 0) ), Alpha = ( Properties.alpha or Properties.Alpha or Properties.transparency or Properties.Transparency or 1 ), Callback = ( Properties.callback or Properties.Callback or Properties.callBack or Properties.CallBack or function() end ), Flag = ( Properties.flag or Properties.Flag or Properties.pointer or Properties.Pointer or Library.NextFlag() ), } -- // Functions Toggle.Colorpickers = Toggle.Colorpickers + 1 local colorpickertypes = Library:NewPicker( "", Colorpicker.State, Colorpicker.Alpha, NewToggle, Toggle.Colorpickers - 1, Colorpicker.Flag, Colorpicker.Callback ) function Colorpicker:Set(color) colorpickertypes:set(color) end -- // Returning return Colorpicker end -- // Misc Functions function Toggle.Set(bool) bool = type(bool) == "boolean" and bool or false if Toggle.Toggled ~= bool then SetState() end end Toggle.Set(Toggle.State) Library.Flags[Toggle.Flag] = Toggle.State Flags[Toggle.Flag] = Toggle.Set -- // Returning return Toggle end -- function Sections:Slider(Properties) if not Properties then Properties = {} end -- local Slider = { Window = self.Window, Page = self.Page, Section = self, Name = Properties.Name or nil, Min = (Properties.min or Properties.Min or Properties.minimum or Properties.Minimum or 0), State = ( Properties.state or Properties.State or Properties.def or Properties.Def or Properties.default or Properties.Default or 10 ), Max = (Properties.max or Properties.Max or Properties.maximum or Properties.Maximum or 100), Sub = ( Properties.suffix or Properties.Suffix or Properties.ending or Properties.Ending or Properties.prefix or Properties.Prefix or Properties.measurement or Properties.Measurement or "" ), Decimals = (Properties.decimals or Properties.Decimals or 1), Callback = ( Properties.callback or Properties.Callback or Properties.callBack or Properties.CallBack or function() end ), Flag = ( Properties.flag or Properties.Flag or Properties.pointer or Properties.Pointer or Library.NextFlag() ), Disabled = (Properties.Disabled or Properties.disable or nil), } local TextValue = ("[value]" .. Slider.Sub) -- local NewSlider = Instance.new('TextButton', Slider.Section.Elements.SectionContent) local Outline = Instance.new('Frame', NewSlider) local Inline = Instance.new('Frame', Outline) local Accent = Instance.new('TextButton', Inline) local Add = Instance.new('TextButton', Outline) local Subtract = Instance.new('TextButton', Outline) local Title = Instance.new('TextLabel', NewSlider) local Value = Instance.new('TextLabel', NewSlider) -- NewSlider.Name = "NewSlider" NewSlider.Size = UDim2.new(1,0,0,22) NewSlider.BackgroundColor3 = Color3.new(1,1,1) NewSlider.BackgroundTransparency = 1 NewSlider.BorderSizePixel = 0 NewSlider.BorderColor3 = Color3.new(0,0,0) NewSlider.Text = "" NewSlider.TextColor3 = Color3.new(0,0,0) NewSlider.AutoButtonColor = false NewSlider.FontFace = Font.new(Font:GetRegistry("menu_plex")) NewSlider.TextSize = 14 -- Outline.Name = "Outline" Outline.Position = UDim2.new(0,15,1,0) Outline.Size = UDim2.new(1,-30,0,7) Outline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) Outline.AnchorPoint = NewVector2(0,1) -- Inline.Name = "Inline" Inline.Position = UDim2.new(0,1,0,1) Inline.Size = UDim2.new(1,-2,1,-2) Inline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) Inline.BorderSizePixel = 0 Inline.BorderColor3 = Color3.new(0,0,0) -- Accent.Name = "Accent" Accent.Size = UDim2.new(0,0,1,0) Accent.BackgroundColor3 = Library.Accent Accent.BorderSizePixel = 0 Accent.BorderColor3 = Color3.new(0,0,0) Accent.Text = "" Accent.TextColor3 = Color3.new(0,0,0) Accent.AutoButtonColor = false Accent.FontFace = Font.new(Font:GetRegistry("menu_plex")) Accent.TextSize = 14 table.insert(Library.ThemeObjects, Accent) table.insert(Library.ThemeObjects, Accent) -- Add.Name = "Add" Add.Position = UDim2.new(1,5,0.5,0) Add.Size = UDim2.new(0,10,0,10) Add.BackgroundColor3 = Color3.new(1,1,1) Add.BackgroundTransparency = 1 Add.BorderSizePixel = 0 Add.BorderColor3 = Color3.new(0,0,0) Add.AnchorPoint = NewVector2(0,0.5) Add.Text = "+" Add.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Add.AutoButtonColor = false Add.FontFace = Font.new(Font:GetRegistry("menu_plex")) Add.TextSize = Library.FontSize Add.TextStrokeTransparency = 0 -- Subtract.Name = "Subtract" Subtract.Position = UDim2.new(0,-15,0.5,0) Subtract.Size = UDim2.new(0,10,0,10) Subtract.BackgroundColor3 = Color3.new(1,1,1) Subtract.BackgroundTransparency = 1 Subtract.BorderSizePixel = 0 Subtract.BorderColor3 = Color3.new(0,0,0) Subtract.AnchorPoint = NewVector2(0,0.5) Subtract.Text = "-" Subtract.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Subtract.AutoButtonColor = false Subtract.FontFace = Font.new(Font:GetRegistry("menu_plex")) Subtract.TextSize = Library.FontSize Subtract.TextStrokeTransparency = 0 -- Title.Name = "Title" Title.Position = UDim2.new(0,15,0,0) Title.Size = UDim2.new(1,0,0,10) Title.BackgroundColor3 = Color3.new(1,1,1) Title.BackgroundTransparency = 1 Title.BorderSizePixel = 0 Title.BorderColor3 = Color3.new(0,0,0) Title.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Title.FontFace = Font.new(Font:GetRegistry("menu_plex")) Title.TextSize = Library.FontSize Title.TextXAlignment = Enum.TextXAlignment.Left Title.Text = Slider.Name Title.TextStrokeTransparency = 0 -- Value.Name = "Value" Value.Position = UDim2.new(0,15,0,0) Value.Size = UDim2.new(1,-30,0,10) Value.BackgroundColor3 = Color3.new(1,1,1) Value.BackgroundTransparency = 1 Value.BorderSizePixel = 0 Value.BorderColor3 = Color3.new(0,0,0) Value.TextColor3 = Color3.new(1,1,1) Value.FontFace = Font.new(Font:GetRegistry("menu_plex")) Value.TextSize = Library.FontSize Value.TextXAlignment = Enum.TextXAlignment.Right Value.TextStrokeTransparency = 0 -- // Functions local Sliding = false local Val = Slider.State local function Set(value) value = math.clamp(Library:Round(value, Slider.Decimals), Slider.Min, Slider.Max) local sizeX = ((value - Slider.Min) / (Slider.Max - Slider.Min)) Accent.Size = UDim2.new(sizeX, 0, 1, 0) --Value.Text = TextValue:gsub("%[value%]", string.format("%.14g", value)) if Slider.Disabled and value == Slider.Min then Value.Text = Slider.Disabled else Value.Text = TextValue:gsub("%[value%]", string.format("%.14g", value)) end Val = value Library.Flags[Slider.Flag] = value Slider.Callback(value) end -- local function Slide(input) local sizeX = (input.Position.X - Outline.AbsolutePosition.X) / Outline.AbsoluteSize.X local value = ((Slider.Max - Slider.Min) * sizeX) + Slider.Min Set(value) end -- Library:Connection(NewSlider.InputBegan, function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then Sliding = true Slide(input) end end) Library:Connection(NewSlider.InputEnded, function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then Sliding = false end end) Library:Connection(Accent.InputBegan, function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then Sliding = true Slide(input) end end) Library:Connection(Accent.InputEnded, function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then Sliding = false end end) Library:Connection(game:GetService("UserInputService").InputChanged, function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then if Sliding then Slide(input) end end end) Library:Connection(NewSlider.MouseEnter, function() table.insert(Library.ThemeObjects, Title) Title.TextColor3 = Library.Accent end) -- Library:Connection(NewSlider.MouseLeave, function() table.remove(Library.ThemeObjects, table.find(Library.ThemeObjects, Title)) Title.TextColor3 = Color3.new(0.5686,0.5686,0.5686) end) -- Library:Connection(Add.MouseButton1Down, function() Set(Val + 1) end) -- Library:Connection(Subtract.MouseButton1Down, function() Set(Val - 1) end) -- function Slider:Set(Value) Set(Value) end -- function Slider:SetVisible(Bool) NewSlider.Visible = Bool end -- Flags[Slider.Flag] = Set Library.Flags[Slider.Flag] = Slider.State Set(Slider.State) -- // Returning return Slider end -- function Sections:Dropdown(Properties) local Properties = Properties or {}; local Dropdown = { Window = self.Window, Page = self.Page, Section = self, Open = false, Name = Properties.Name or Properties.name or nil, Options = (Properties.options or Properties.Options or Properties.values or Properties.Values or { "1", "2", "3", }), Max = (Properties.Max or Properties.max or nil), State = ( Properties.state or Properties.State or Properties.def or Properties.Def or Properties.default or Properties.Default or nil ), Callback = ( Properties.callback or Properties.Callback or Properties.callBack or Properties.CallBack or function() end ), Flag = ( Properties.flag or Properties.Flag or Properties.pointer or Properties.Pointer or Library.NextFlag() ), OptionInsts = {}, } -- local NewDrop = Instance.new('Frame', Dropdown.Section.Elements.SectionContent) local Outline = Instance.new('TextButton', NewDrop) local Inline = Instance.new('Frame', Outline) local Value = Instance.new('TextLabel', Inline) local Icon = Instance.new('TextLabel', Inline) local Title = Instance.new('TextLabel', NewDrop) local ContainerOutline = Instance.new('Frame', NewDrop) local ContainerInline = Instance.new('Frame', ContainerOutline) local UIListLayout = Instance.new('UIListLayout', ContainerInline) -- NewDrop.Name = "NewDrop" NewDrop.Size = UDim2.new(1,0,0,30) NewDrop.BackgroundColor3 = Color3.new(1,1,1) NewDrop.BackgroundTransparency = 1 NewDrop.BorderSizePixel = 0 NewDrop.BorderColor3 = Color3.new(0,0,0) -- Outline.Name = "Outline" Outline.Position = UDim2.new(0,15,1,0) Outline.Size = UDim2.new(1,-30,0,16) Outline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) Outline.AnchorPoint = NewVector2(0,1) Outline.Text = "" Outline.AutoButtonColor = false -- Inline.Name = "Inline" Inline.Position = UDim2.new(0,1,0,1) Inline.Size = UDim2.new(1,-2,1,-2) Inline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) Inline.BorderSizePixel = 0 Inline.BorderColor3 = Color3.new(0,0,0) -- Value.Name = "Value" Value.Position = UDim2.new(0,2,0,0) Value.Size = UDim2.new(1,-30,1,0) Value.BackgroundColor3 = Color3.new(1,1,1) Value.BackgroundTransparency = 1 Value.BorderSizePixel = 0 Value.BorderColor3 = Color3.new(0,0,0) Value.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Value.FontFace = Font.new(Font:GetRegistry("menu_plex")) Value.TextSize = Library.FontSize Value.TextXAlignment = Enum.TextXAlignment.Left Value.TextStrokeTransparency = 0 Value.TextWrapped = true -- Icon.Name = "Icon" Icon.Position = UDim2.new(0,-5,0,0) Icon.Size = UDim2.new(1,0,1,0) Icon.BackgroundColor3 = Color3.new(1,1,1) Icon.BackgroundTransparency = 1 Icon.BorderSizePixel = 0 Icon.BorderColor3 = Color3.new(0,0,0) Icon.Text = "+" Icon.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Icon.FontFace = Font.new(Font:GetRegistry("menu_plex")) Icon.TextSize = Library.FontSize Icon.TextXAlignment = Enum.TextXAlignment.Right Icon.TextStrokeTransparency = 0 -- Title.Name = "Title" Title.Position = UDim2.new(0,15,0,0) Title.Size = UDim2.new(1,0,0,10) Title.BackgroundColor3 = Color3.new(1,1,1) Title.BackgroundTransparency = 1 Title.BorderSizePixel = 0 Title.BorderColor3 = Color3.new(0,0,0) Title.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Title.FontFace = Font.new(Font:GetRegistry("menu_plex")) Title.TextSize = Library.FontSize Title.TextXAlignment = Enum.TextXAlignment.Left Title.TextStrokeTransparency = 0 Title.Text = Dropdown.Name -- ContainerOutline.Name = "ContainerOutline" ContainerOutline.Position = UDim2.new(0,15,1,2) ContainerOutline.Size = UDim2.new(1,-30,0,10) ContainerOutline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) ContainerOutline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) ContainerOutline.Visible = false ContainerOutline.AutomaticSize = Enum.AutomaticSize.Y ContainerOutline.ZIndex = 5 -- ContainerInline.Name = "ContainerInline" ContainerInline.Position = UDim2.new(0,1,0,1) ContainerInline.Size = UDim2.new(1,-2,1,-2) ContainerInline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) ContainerInline.BorderSizePixel = 0 ContainerInline.BorderColor3 = Color3.new(0,0,0) ContainerInline.ZIndex = 6; -- UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder -- // Connections Library:Connection(Outline.MouseButton1Down, function() ContainerOutline.Visible = not ContainerOutline.Visible if ContainerOutline.Visible then NewDrop.ZIndex = 2 Icon.Text = "-" else NewDrop.ZIndex = 1 Icon.Text = "+" end end) Library:Connection(game:GetService("UserInputService").InputBegan, function(Input) if ContainerOutline.Visible and Input.UserInputType == Enum.UserInputType.MouseButton1 then if not Library:IsMouseOverFrame(ContainerOutline) and not Library:IsMouseOverFrame(NewDrop) then ContainerOutline.Visible = false NewDrop.ZIndex = 1 Icon.Text = "+" end end end) Library:Connection(NewDrop.MouseEnter, function() Outline.BorderColor3 = Library.Accent table.insert(Library.ThemeObjects, Title) Title.TextColor3 = Library.Accent end) -- Library:Connection(NewDrop.MouseLeave, function() Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) table.remove(Library.ThemeObjects, table.find(Library.ThemeObjects, Title)) Title.TextColor3 = Color3.new(0.5686,0.5686,0.5686) end) -- local chosen = Dropdown.Max and {} or nil -- local function handleoptionclick(option, button, text) button.MouseButton1Down:Connect(function() if Dropdown.Max then if table.find(chosen, option) then table.remove(chosen, table.find(chosen, option)) local textchosen = {} local cutobject = false for _, opt in next, chosen do table.insert(textchosen, opt) end Value.Text = #chosen == 0 and "" or table.concat(textchosen, ",") .. (cutobject and ", ..." or "") text.TextColor3 = Color3.fromRGB(145,145,145) Library.Flags[Dropdown.Flag] = chosen Dropdown.Callback(chosen) else if #chosen == Dropdown.Max then Dropdown.OptionInsts[chosen[1]].text.TextColor3 = Color3.fromRGB(145,145,145) table.remove(chosen, 1) end table.insert(chosen, option) local textchosen = {} local cutobject = false for _, opt in next, chosen do table.insert(textchosen, opt) end Value.Text = #chosen == 0 and "" or table.concat(textchosen, ",") .. (cutobject and ", ..." or "") text.TextColor3 = Color3.fromRGB(255,255,255) Library.Flags[Dropdown.Flag] = chosen Dropdown.Callback(chosen) end else for opt, tbl in next, Dropdown.OptionInsts do if opt ~= option then tbl.text.TextColor3 = Color3.fromRGB(145,145,145) end end chosen = option Value.Text = option text.TextColor3 = Color3.fromRGB(255,255,255) Library.Flags[Dropdown.Flag] = option Dropdown.Callback(option) end end) end -- local function createoptions(tbl) for _, option in next, tbl do Dropdown.OptionInsts[option] = {} local NewOption = Instance.new('TextButton', ContainerInline) local OptionName = Instance.new('TextLabel', NewOption) NewOption.Name = "NewOption" NewOption.Size = UDim2.new(1,0,0,15) NewOption.BackgroundColor3 = Color3.new(1,1,1) NewOption.BackgroundTransparency = 1 NewOption.BorderSizePixel = 0 NewOption.BorderColor3 = Color3.new(0,0,0) NewOption.Text = "" NewOption.TextColor3 = Color3.new(0,0,0) NewOption.AutoButtonColor = false NewOption.FontFace = Font.new(Font:GetRegistry("menu_plex")) NewOption.TextSize = 14 NewOption.ZIndex = 7; Dropdown.OptionInsts[option].button = NewOption -- OptionName.Name = "OptionName" OptionName.Position = UDim2.new(0,2,0,0) OptionName.Size = UDim2.new(1,0,1,0) OptionName.BackgroundColor3 = Color3.new(1,1,1) OptionName.BackgroundTransparency = 1 OptionName.BorderSizePixel = 0 OptionName.BorderColor3 = Color3.new(0,0,0) OptionName.Text = option OptionName.TextColor3 = Color3.new(0.5686,0.5686,0.5686) OptionName.FontFace = Font.new(Font:GetRegistry("menu_plex")) OptionName.TextSize = Library.FontSize OptionName.TextXAlignment = Enum.TextXAlignment.Left OptionName.TextStrokeTransparency = 0 OptionName.ZIndex = 8; Dropdown.OptionInsts[option].text = OptionName handleoptionclick(option, NewOption, OptionName) end end createoptions(Dropdown.Options) -- local set set = function(option) if Dropdown.Max then table.clear(chosen) option = type(option) == "table" and option or {} for opt, tbl in next, Dropdown.OptionInsts do if not table.find(option, opt) then tbl.text.TextColor3 = Color3.fromRGB(145,145,145) end end for i, opt in next, option do if table.find(Dropdown.Options, opt) and #chosen < Dropdown.Max then table.insert(chosen, opt) Dropdown.OptionInsts[opt].text.TextColor3 = Color3.fromRGB(255,255,255) end end local textchosen = {} local cutobject = false for _, opt in next, chosen do table.insert(textchosen, opt) end Value.Text = #chosen == 0 and "" or table.concat(textchosen, ",") .. (cutobject and ", ..." or "") Library.Flags[Dropdown.Flag] = chosen Dropdown.Callback(chosen) end end -- function Dropdown:Set(option) if Dropdown.Max then set(option) else for opt, tbl in next, Dropdown.OptionInsts do if opt ~= option then tbl.text.TextColor3 = Color3.fromRGB(145,145,145) end end if table.find(Dropdown.Options, option) then chosen = option Value.Text = option Dropdown.OptionInsts[option].text.TextColor3 = Color3.fromRGB(255,255,255) Library.Flags[Dropdown.Flag] = chosen Dropdown.Callback(chosen) else chosen = nil Value.Text = "" Library.Flags[Dropdown.Flag] = chosen Dropdown.Callback(chosen) end end end -- function Dropdown:Refresh(tbl) for _, opt in next, Dropdown.OptionInsts do coroutine.wrap(function() opt.button:Destroy() end)() end table.clear(Dropdown.OptionInsts) createoptions(tbl) if Dropdown.Max then table.clear(chosen) else chosen = nil end Library.Flags[Dropdown.Flag] = chosen Dropdown.Callback(chosen) end -- // Returning if Dropdown.Max then Flags[Dropdown.Flag] = set else Flags[Dropdown.Flag] = Dropdown end Dropdown:Set(Dropdown.State) function Dropdown:SetVisible(Bool) NewDrop.Visible = Bool end return Dropdown end -- function Sections:Keybind(Properties) local Properties = Properties or {} local Keybind = { Section = self, Name = Properties.name or Properties.Name or "Keybind", State = ( Properties.state or Properties.State or Properties.def or Properties.Def or Properties.default or Properties.Default or nil ), Mode = (Properties.mode or Properties.Mode or "Toggle"), UseKey = (Properties.UseKey or false), Ignore = (Properties.ignore or Properties.Ignore or false), Callback = ( Properties.callback or Properties.Callback or Properties.callBack or Properties.CallBack or function() end ), Flag = ( Properties.flag or Properties.Flag or Properties.pointer or Properties.Pointer or Library.NextFlag() ), Binding = nil, } local Key local State = false -- local NewKey = Instance.new('Frame', Keybind.Section.Elements.SectionContent) local Outline = Instance.new('TextButton', NewKey) local Inline = Instance.new('Frame', Outline) local Value = Instance.new('TextLabel', Inline) local Title = Instance.new('TextLabel', NewKey) local ModeOutline = Instance.new('Frame', NewKey) local ModeInline = Instance.new('Frame', ModeOutline) local UIListLayout = Instance.new('UIListLayout', ModeInline) local Hold = Instance.new('TextButton', ModeInline) local Toggle = Instance.new('TextButton', ModeInline) local Always = Instance.new('TextButton', ModeInline) local ListValue = Library.KeyList:NewKey(tostring(Keybind.State):gsub("Enum.KeyCode.", ""), Keybind.Name, Keybind.Mode) -- NewKey.Name = "NewKey" NewKey.Size = UDim2.new(1,0,0,12) NewKey.BackgroundColor3 = Color3.new(1,1,1) NewKey.BackgroundTransparency = 1 NewKey.BorderSizePixel = 0 NewKey.BorderColor3 = Color3.new(0,0,0) -- Outline.Name = "Outline" Outline.Position = UDim2.new(1,0,0.5,0) Outline.Size = UDim2.new(0,40,0,12) Outline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) Outline.AnchorPoint = NewVector2(1,0.5) Outline.Text = "" Outline.AutoButtonColor = false -- Inline.Name = "Inline" Inline.Position = UDim2.new(0,1,0,1) Inline.Size = UDim2.new(1,-2,1,-2) Inline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) Inline.BorderSizePixel = 0 Inline.BorderColor3 = Color3.new(0,0,0) -- Value.Name = "Value" Value.Size = UDim2.new(1,0,1,0) Value.BackgroundColor3 = Color3.new(1,1,1) Value.BackgroundTransparency = 1 Value.BorderSizePixel = 0 Value.BorderColor3 = Color3.new(0,0,0) Value.Text = "MB2" Value.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Value.FontFace = Font.new(Font:GetRegistry("menu_plex")) Value.TextSize = Library.FontSize Value.TextStrokeTransparency = 0 -- Title.Name = "Title" Title.Position = UDim2.new(0,15,0,0) Title.Size = UDim2.new(1,0,0,10) Title.BackgroundColor3 = Color3.new(1,1,1) Title.BackgroundTransparency = 1 Title.BorderSizePixel = 0 Title.BorderColor3 = Color3.new(0,0,0) Title.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Title.FontFace = Font.new(Font:GetRegistry("menu_plex")) Title.TextSize = Library.FontSize Title.TextXAlignment = Enum.TextXAlignment.Left Title.Text = Keybind.Name Title.TextStrokeTransparency = 0 -- ModeOutline.Name = "ModeOutline" ModeOutline.Position = UDim2.new(1,65,0.5,0) ModeOutline.Size = UDim2.new(0,60,0,12) ModeOutline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) ModeOutline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) ModeOutline.AnchorPoint = NewVector2(1,0.5) ModeOutline.AutomaticSize = Enum.AutomaticSize.Y ModeOutline.Visible = false -- ModeInline.Name = "ModeInline" ModeInline.Position = UDim2.new(0,1,0,1) ModeInline.Size = UDim2.new(1,-2,1,-2) ModeInline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) ModeInline.BorderSizePixel = 0 ModeInline.BorderColor3 = Color3.new(0,0,0) -- UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder -- Hold.Name = "Hold" Hold.Size = UDim2.new(1,0,0,15) Hold.BackgroundColor3 = Color3.new(1,1,1) Hold.BackgroundTransparency = 1 Hold.BorderSizePixel = 0 Hold.BorderColor3 = Color3.new(0,0,0) Hold.Text = "Hold" Hold.TextColor3 = Keybind.Mode == "Hold" and Color3.new(1,1,1) or Color3.new(0.5686,0.5686,0.5686) Hold.AutoButtonColor = false Hold.FontFace = Font.new(Font:GetRegistry("menu_plex")) Hold.TextSize = Library.FontSize Hold.TextStrokeTransparency = 0 -- Toggle.Name = "Toggle" Toggle.Size = UDim2.new(1,0,0,15) Toggle.BackgroundColor3 = Color3.new(1,1,1) Toggle.BackgroundTransparency = 1 Toggle.BorderSizePixel = 0 Toggle.BorderColor3 = Color3.new(0,0,0) Toggle.Text = "Toggle" Toggle.TextColor3 = Keybind.Mode == "Toggle" and Color3.new(1,1,1) or Color3.new(0.5686,0.5686,0.5686) Toggle.AutoButtonColor = false Toggle.FontFace = Font.new(Font:GetRegistry("menu_plex")) Toggle.TextSize = Library.FontSize Toggle.TextStrokeTransparency = 0 -- Always.Name = "Always" Always.Size = UDim2.new(1,0,0,15) Always.BackgroundColor3 = Color3.new(1,1,1) Always.BackgroundTransparency = 1 Always.BorderSizePixel = 0 Always.BorderColor3 = Color3.new(0,0,0) Always.Text = "Always" Always.TextColor3 = Keybind.Mode == "Always" and Color3.new(1,1,1) or Color3.new(0.5686,0.5686,0.5686) Always.AutoButtonColor = false Always.FontFace = Font.new(Font:GetRegistry("menu_plex")) Always.TextSize = Library.FontSize Always.TextStrokeTransparency = 0 -- // Functions local function set(newkey) if string.find(tostring(newkey), "Enum") then if c then c:Disconnect() if Keybind.Flag then Library.Flags[Keybind.Flag] = false end Keybind.Callback(false) end if tostring(newkey):find("Enum.KeyCode.") then newkey = Enum.KeyCode[tostring(newkey):gsub("Enum.KeyCode.", "")] elseif tostring(newkey):find("Enum.UserInputType.") then newkey = Enum.UserInputType[tostring(newkey):gsub("Enum.UserInputType.", "")] end if newkey == Enum.KeyCode.Backspace then Key = nil if Keybind.UseKey then if Keybind.Flag then Library.Flags[Keybind.Flag] = Key end Keybind.Callback(Key) end local text = "None" Value.Text = text ListValue:Update(text, Keybind.Name, Keybind.Mode) elseif newkey ~= nil then Key = newkey if Keybind.UseKey then if Keybind.Flag then Library.Flags[Keybind.Flag] = Key end Keybind.Callback(Key) end local text = (Library.Keys[newkey] or tostring(newkey):gsub("Enum.KeyCode.", "")) Value.Text = text ListValue:Update(text, Keybind.Name, Keybind.Mode) end Library.Flags[Keybind.Flag .. "_KEY"] = newkey elseif table.find({ "Always", "Toggle", "Hold" }, newkey) then if not Keybind.UseKey then Library.Flags[Keybind.Flag .. "_KEY STATE"] = newkey Keybind.Mode = newkey ListValue:Update((Library.Keys[Key] or tostring(Key):gsub("Enum.KeyCode.", "")), Toggle.Name, Keybind.Mode) if Keybind.Mode == "Always" then State = true if Keybind.Flag then Library.Flags[Keybind.Flag] = State end Keybind.Callback(true) ListValue:SetVisible(true) end end else State = newkey if Keybind.Flag then Library.Flags[Keybind.Flag] = newkey end Keybind.Callback(newkey) end end -- set(Keybind.State) set(Keybind.Mode) Outline.MouseButton1Click:Connect(function() if not Keybind.Binding then Value.Text = "..." Keybind.Binding = Library:Connection( game:GetService("UserInputService").InputBegan, function(input, gpe) set( input.UserInputType == Enum.UserInputType.Keyboard and input.KeyCode or input.UserInputType ) Library:Disconnect(Keybind.Binding) task.wait() Keybind.Binding = nil end ) end end) -- Library:Connection(game:GetService("UserInputService").InputBegan, function(inp, Chatting) if not Chatting then if (inp.KeyCode == Key or inp.UserInputType == Key) and not Keybind.Binding and not Keybind.UseKey then if Keybind.Mode == "Hold" then if Keybind.Flag then Library.Flags[Keybind.Flag] = true end c = Library:Connection(game:GetService("RunService").RenderStepped, function() if Keybind.Callback then Keybind.Callback(true) end end) ListValue:SetVisible(true) elseif Keybind.Mode == "Toggle" then State = not State if Keybind.Flag then Library.Flags[Keybind.Flag] = State end Keybind.Callback(State) ListValue:SetVisible(State) end end end end) -- Library:Connection(game:GetService("UserInputService").InputEnded, function(inp, Chatting) if not Chatting then if Keybind.Mode == "Hold" and not Keybind.UseKey then if Key ~= "" or Key ~= nil then if inp.KeyCode == Key or inp.UserInputType == Key then if c then c:Disconnect() if Keybind.Flag then Library.Flags[Keybind.Flag] = false end if Keybind.Callback then Keybind.Callback(false) end ListValue:SetVisible(false) end end end end end end) Library:Connection(Outline.MouseEnter, function() Outline.BorderColor3 = Library.Accent end) -- Library:Connection(Outline.MouseLeave, function() Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) end) -- Library:Connection(Outline.MouseButton2Down, function() ModeOutline.Visible = not ModeOutline.Visible end) -- Library:Connection(NewKey.MouseEnter, function() table.insert(Library.ThemeObjects, Title) Title.TextColor3 = Library.Accent end) -- Library:Connection(NewKey.MouseLeave, function() table.remove(Library.ThemeObjects, table.find(Library.ThemeObjects, Title)) Title.TextColor3 = Color3.new(0.5686,0.5686,0.5686) end) -- Library:Connection(Hold.MouseButton1Down, function() set("Hold") Hold.TextColor3 = Color3.new(1,1,1) Toggle.TextColor3 = Color3.fromRGB(145,145,145) Always.TextColor3 = Color3.fromRGB(145,145,145) end) -- Library:Connection(Toggle.MouseButton1Down, function() set("Toggle") Hold.TextColor3 = Color3.fromRGB(145,145,145) Toggle.TextColor3 = Color3.new(1,1,1) Always.TextColor3 = Color3.fromRGB(145,145,145) end) -- Library:Connection(Always.MouseButton1Down, function() set("Always") Hold.TextColor3 = Color3.fromRGB(145,145,145) Toggle.TextColor3 = Color3.fromRGB(145,145,145) Always.TextColor3 = Color3.new(1,1,1) end) -- Library:Connection(game:GetService("UserInputService").InputBegan, function(Input, Chatting) if ModeOutline.Visible and Input.UserInputType == Enum.UserInputType.MouseButton1 then if not Library:IsMouseOverFrame(ModeOutline) then ModeOutline.Visible = false end end end) -- Library.Flags[Keybind.Flag .. "_KEY"] = Keybind.State Library.Flags[Keybind.Flag .. "_KEY STATE"] = Keybind.Mode Flags[Keybind.Flag] = set Flags[Keybind.Flag .. "_KEY"] = set Flags[Keybind.Flag .. "_KEY STATE"] = set -- function Keybind:Set(key) set(key) end -- // Returning return Keybind end -- function Sections:Colorpicker(Properties) local Properties = Properties or {} local Colorpicker = { Window = self.Window, Page = self.Page, Section = self, Name = (Properties.Name or "Colorpicker"), State = ( Properties.state or Properties.State or Properties.def or Properties.Def or Properties.default or Properties.Default or Color3.fromRGB(255, 0, 0) ), Alpha = ( Properties.alpha or Properties.Alpha or Properties.transparency or Properties.Transparency or 1 ), Callback = ( Properties.callback or Properties.Callback or Properties.callBack or Properties.CallBack or function() end ), Flag = ( Properties.flag or Properties.Flag or Properties.pointer or Properties.Pointer or Library.NextFlag() ), Colorpickers = 0, } -- local NewToggle = Instance.new('Frame', Colorpicker.Section.Elements.SectionContent) local TextLabel = Instance.new('TextLabel', NewToggle) -- NewToggle.Name = "NewToggle" NewToggle.Size = UDim2.new(1,0,0,10) NewToggle.BackgroundColor3 = Color3.new(1,1,1) NewToggle.BackgroundTransparency = 1 NewToggle.BorderSizePixel = 0 NewToggle.BorderColor3 = Color3.new(0,0,0) -- TextLabel.Position = UDim2.new(0,15,0,0) TextLabel.Size = UDim2.new(0,100,1,0) TextLabel.BackgroundColor3 = Color3.new(1,1,1) TextLabel.BackgroundTransparency = 1 TextLabel.BorderSizePixel = 0 TextLabel.BorderColor3 = Color3.new(0,0,0) TextLabel.Text = Colorpicker.Name TextLabel.TextColor3 = Color3.fromRGB(145, 145, 145) TextLabel.FontFace = Font.new(Font:GetRegistry("menu_plex")) TextLabel.TextSize = Library.FontSize TextLabel.TextXAlignment = Enum.TextXAlignment.Left TextLabel.TextStrokeTransparency = 0 Library:Connection(NewToggle.MouseEnter, function() table.insert(Library.ThemeObjects, TextLabel) TextLabel.TextColor3 = Library.Accent end) -- Library:Connection(NewToggle.MouseLeave, function() table.remove(Library.ThemeObjects, table.find(Library.ThemeObjects, TextLabel)) TextLabel.TextColor3 = Color3.new(0.5686,0.5686,0.5686) end) -- // Functions Colorpicker.Colorpickers = Colorpicker.Colorpickers + 1 local colorpickertypes = Library:NewPicker( Colorpicker.Name, Colorpicker.State, Colorpicker.Alpha, NewToggle, Colorpicker.Colorpickers - 1, Colorpicker.Flag, Colorpicker.Callback ) function Colorpicker:Set(color) colorpickertypes:set(color, false, true) end -- // Returning return Colorpicker end -- function Sections:Textbox(Properties) local Properties = Properties or {} local Textbox = { Window = self.Window, Page = self.Page, Section = self, Name = (Properties.Name or Properties.name or "textbox"), Placeholder = ( Properties.placeholder or Properties.Placeholder or Properties.holder or Properties.Holder or "" ), State = ( Properties.state or Properties.State or Properties.def or Properties.Def or Properties.default or Properties.Default or "" ), Callback = ( Properties.callback or Properties.Callback or Properties.callBack or Properties.CallBack or function() end ), Flag = ( Properties.flag or Properties.Flag or Properties.pointer or Properties.Pointer or Library.NextFlag() ), } -- local NewDrop = Instance.new('Frame', Textbox.Section.Elements.SectionContent) local Outline = Instance.new('TextButton', NewDrop) local Inline = Instance.new('Frame', Outline) local Value = Instance.new('TextBox', Inline) local Title = Instance.new('TextLabel', NewDrop) -- NewDrop.Name = "NewDrop" NewDrop.Size = UDim2.new(1,0,0,30) NewDrop.BackgroundColor3 = Color3.new(1,1,1) NewDrop.BackgroundTransparency = 1 NewDrop.BorderSizePixel = 0 NewDrop.BorderColor3 = Color3.new(0,0,0) -- Outline.Name = "Outline" Outline.Position = UDim2.new(0,15,1,0) Outline.Size = UDim2.new(1,-30,0,16) Outline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) Outline.AnchorPoint = NewVector2(0,1) Outline.Text = "" Outline.AutoButtonColor = false -- Inline.Name = "Inline" Inline.Position = UDim2.new(0,1,0,1) Inline.Size = UDim2.new(1,-2,1,-2) Inline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) Inline.BorderSizePixel = 0 Inline.BorderColor3 = Color3.new(0,0,0) -- Value.Name = "Value" Value.Position = UDim2.new(0,2,0,0) Value.Size = UDim2.new(1,0,1,0) Value.BackgroundColor3 = Color3.new(1,1,1) Value.BackgroundTransparency = 1 Value.BorderSizePixel = 0 Value.BorderColor3 = Color3.new(0,0,0) Value.TextColor3 = Color3.fromRGB(145,145,145) Value.FontFace = Font.new(Font:GetRegistry("menu_plex")) Value.TextSize = Library.FontSize Value.TextXAlignment = Enum.TextXAlignment.Left Value.TextStrokeTransparency = 0 Value.TextWrapped = true Value.Text = Textbox.State Value.ClearTextOnFocus = false -- Title.Name = "Title" Title.Position = UDim2.new(0,15,0,0) Title.Size = UDim2.new(1,0,0,10) Title.BackgroundColor3 = Color3.new(1,1,1) Title.BackgroundTransparency = 1 Title.BorderSizePixel = 0 Title.BorderColor3 = Color3.new(0,0,0) Title.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Title.FontFace = Font.new(Font:GetRegistry("menu_plex")) Title.TextSize = Library.FontSize Title.TextXAlignment = Enum.TextXAlignment.Left Title.TextStrokeTransparency = 0 Title.Text = Textbox.Name -- // Connections Library:Connection(NewDrop.MouseEnter, function() Outline.BorderColor3 = Library.Accent table.insert(Library.ThemeObjects, Title) Title.TextColor3 = Library.Accent end) -- Library:Connection(NewDrop.MouseLeave, function() Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) table.remove(Library.ThemeObjects, table.find(Library.ThemeObjects, Title)) Title.TextColor3 = Color3.new(0.5686,0.5686,0.5686) end) Value.FocusLost:Connect(function() Textbox.Callback(Value.Text) Library.Flags[Textbox.Flag] = Value.Text end) -- local function set(str) Value.Text = str Library.Flags[Textbox.Flag] = str Textbox.Callback(str) end -- // Return Flags[Textbox.Flag] = set return Textbox end -- function Sections:Button(Properties) local Properties = Properties or {} local Button = { Window = self.Window, Page = self.Page, Section = self, Name = Properties.Name or "button", Callback = ( Properties.callback or Properties.Callback or Properties.callBack or Properties.CallBack or function() end ), } -- local NewButton = Instance.new('TextButton', Button.Section.Elements.SectionContent) local Outline = Instance.new('Frame', NewButton) local Inline = Instance.new('Frame', Outline) local Value = Instance.new('TextLabel', Inline) -- NewButton.Name = "NewButton" NewButton.Size = UDim2.new(1,0,0,14) NewButton.BackgroundColor3 = Color3.new(1,1,1) NewButton.BackgroundTransparency = 1 NewButton.BorderSizePixel = 0 NewButton.BorderColor3 = Color3.new(0,0,0) NewButton.Text = "" NewButton.TextColor3 = Color3.new(0,0,0) NewButton.AutoButtonColor = false NewButton.FontFace = Font.new(Font:GetRegistry("menu_plex")) NewButton.TextSize = 14 -- Outline.Name = "Outline" Outline.Position = UDim2.new(0,15,1,0) Outline.Size = UDim2.new(1,-30,0,14) Outline.BackgroundColor3 = Color3.new(0.1765,0.1765,0.1765) Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) Outline.AnchorPoint = NewVector2(0,1) -- Inline.Name = "Inline" Inline.Position = UDim2.new(0,1,0,1) Inline.Size = UDim2.new(1,-2,1,-2) Inline.BackgroundColor3 = Color3.new(0.1294,0.1294,0.1294) Inline.BorderSizePixel = 0 Inline.BorderColor3 = Color3.new(0,0,0) -- Value.Name = "Value" Value.Size = UDim2.new(1,0,1,0) Value.BackgroundColor3 = Color3.new(1,1,1) Value.BackgroundTransparency = 1 Value.BorderSizePixel = 0 Value.BorderColor3 = Color3.new(0,0,0) Value.TextColor3 = Color3.new(0.5686,0.5686,0.5686) Value.FontFace = Font.new(Font:GetRegistry("menu_plex")) Value.TextSize = Library.FontSize Value.Text = Button.Name Value.TextStrokeTransparency = 0 Library:Connection(NewButton.MouseEnter, function() Outline.BorderColor3 = Library.Accent end) -- Library:Connection(NewButton.MouseLeave, function() Outline.BorderColor3 = Color3.new(0.0392,0.0392,0.0392) end) -- Library:Connection(NewButton.MouseButton1Down, function() Button.Callback() Value.TextColor3 = Library.Accent end) -- Library:Connection(NewButton.MouseButton1Up, function() Value.TextColor3 = Color3.new(0.5686,0.5686,0.5686) end) end -- function Sections:Label(Properties) -- fuck finobe local Properties = Properties or {} local Label = { Window = self.Window, Page = self.Page, Section = self, Name = Properties.Name or "label", Centered = Properties.Centered or false, } local NewButton = Instance.new('TextLabel', Label.Section.Elements.SectionContent) -- ya im lazy -- NewButton.Name = "NewButton" NewButton.Size = UDim2.new(1,0,0,12) NewButton.BackgroundColor3 = Color3.new(1,1,1) NewButton.BackgroundTransparency = 1 NewButton.BorderSizePixel = 0 NewButton.BorderColor3 = Color3.new(0,0,0) NewButton.Text = Label.Name NewButton.TextColor3 = Color3.fromRGB(255,255,255) NewButton.FontFace = Font.new(Font:GetRegistry("menu_plex")) NewButton.TextSize = Library.FontSize NewButton.TextXAlignment = Label.Centered and Enum.TextXAlignment.Center or Enum.TextXAlignment.Left NewButton.TextStrokeTransparency = 0 NewButton.TextStrokeColor3 = Color3.new(0,0,0) end end -- // Base Functions do -- // Utility Functions do function utility:ValidateClient(Player) return Player and Player.Character and Player.Character:FindFirstChild("Humanoid") and true or false end -- function utility:getPlayerInformation(Player) local Object = Player.Character local Humanoid = (Object and Object:FindFirstChildOfClass("Humanoid")) local RootPart = (Humanoid and Humanoid.RootPart) -- return Object, Humanoid, RootPart end -- function utility:safeUnit(unit) if unit.Magnitude > 1e-8 then return unit end -- return Vector3.zero end -- function utility:CreateBeam(Origin, End, Color1, FaceCamera, Width, TextureSpeed, Brightness) local BeamPart = Instance.new("Part", Workspace) BeamPart.Name = "BeamPart" BeamPart.Transparency = 1 -- local Part = Instance.new("Part", BeamPart) Part.Size = NewVector3(1, 1, 1) Part.Transparency = 1 Part.CanCollide = false Part.CFrame = typeof(Origin) == "CFrame" and Origin or NewCFrame(Origin) Part.Anchored = true local Attachment = Instance.new("Attachment", Part) local Part2 = Instance.new("Part", BeamPart) Part2.Size = NewVector3(1, 1, 1) Part2.Transparency = 1 Part2.CanCollide = false Part2.CFrame = typeof(End) == "CFrame" and End or NewCFrame(End) Part2.Anchored = true Part2.Color = Color3.fromRGB(255, 255, 255) local Attachment2 = Instance.new("Attachment", Part2) local Beam = Instance.new("Beam", Part) Beam.FaceCamera = FaceCamera Beam.Color = ColorSequence.new{ ColorSequenceKeypoint.new(0.00, Color1), ColorSequenceKeypoint.new(1, Color1), } Beam.Attachment0 = Attachment Beam.Attachment1 = Attachment2 Beam.Transparency = NumberSequence.new{ NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(1, 0), } Beam.LightEmission = Brightness Beam.LightInfluence = 1 Beam.Width0 = Width Beam.Width1 = Width Beam.Texture = "rbxassetid://7151778302" Beam.LightEmission = 1 Beam.LightInfluence = 1 Beam.TextureMode = Enum.TextureMode.Wrap Beam.TextureLength = 3 Beam.TextureSpeed = TextureSpeed delay(flags["Tracers Life Time"], function() task.spawn(function() for i = 0, 100 do task.wait(0.01) Beam.Transparency = NumberSequence.new{ NumberSequenceKeypoint.new(0, i/100), NumberSequenceKeypoint.new(1, i/100), } end -- Part:Destroy() Part2:Destroy() BeamPart:Destroy() end) end) end -- function utility:generateAngles(numLines) local angles = {} local angleIncrement = 2 * math.pi / numLines for i = 1, numLines do local angle = (i - 1) * angleIncrement table.insert(angles, angle) end return angles end -- function utility:Shift(Number) return math.acos(math.cos(Number * math.pi)) / math.pi end -- function utility:checkMessage(tbl) local msg = tbl[math.random(1, #tbl)] if msg == oldMsg then return utility:checkMessage(tbl) else oldMsg = msg return msg end end -- function utility:calculateAimViewerEndPoint() if utility.target and utility.target.Character and flags["Aim Viewer Bypass"] then local part = (flags["Jump Prediction"] and utility.target.Character.Humanoid.FloorMaterial == Enum.Material.Air and "RightFoot") or (flags["Nearest Part"] and partClosest) or flags["Single Hit Part"] local yOffset = utility.target.Character.Humanoid.FloorMaterial == Enum.Material.Air and flags["Manual Offset Value"] or 0 -- if (checks == true) then if flags["Resolver"] then local endpoint = utility.target.Character[tostring(part)].Position + offset + NewVector3(0, yOffset, 0) Remote:FireServer("UpdateMousePos", endpoint) else local endpoint = utility.target.Character[tostring(part)].Position + (utility.target.Character.HumanoidRootPart.Velocity * prediction) + NewVector3(0, yOffset, 0) Remote:FireServer("UpdateMousePos", endpoint) end end end end -- function utility:getHeld() if LocalPlayer.Character and LocalPlayer.Character:FindFirstChildWhichIsA("Tool") and LocalPlayer.Character then return LocalPlayer.Character:FindFirstChildWhichIsA("Tool") or nil; end end -- function utility:TranslateString(inputString, targetLanguage) local translatedString = "" for i = 1, #inputString do local char = inputString:sub(i, i) local translation = Languages[char] and Languages[char][targetLanguage] translatedString = translatedString .. (translation or char) end return translatedString end -- function utility:GetComponents(Player) if utility:ValidateClient(Player) then return Player.Character, Player.Character:FindFirstChild("HumanoidRootPart"), Player.Character:FindFirstChild("Humanoid") end end -- function utility:getClosestPlayerToCursor(Radius) local shortestDistance = Radius or math.huge local closestPlayer for i, v in pairs(Players:GetPlayers()) do if v ~= LocalPlayer and utility:ValidateClient(v) and v.Character:FindFirstChild("HumanoidRootPart") then local pos, OnScreen = Camera:WorldToViewportPoint(v.Character.HumanoidRootPart.Position) local magnitude = (NewVector2(pos.X, pos.Y) - NewVector2(Mouse.X, Mouse.Y)).magnitude if magnitude < shortestDistance and OnScreen then closestPlayer = v shortestDistance = magnitude end end end return closestPlayer end -- function utility:RecalculateVelocity(Player) if utility:ValidateClient(Player) then local Character, RootPart, Humanoid = utility:GetComponents(Player) local currentPosition = RootPart.Position local currentTime = tick() task.wait() local newPosition = RootPart.Position local newTime = tick() local distanceTraveled = (newPosition - currentPosition) local timeInterval = newTime - currentTime local velocity = distanceTraveled / timeInterval currentPosition = newPosition currentTime = newTime return velocity end end -- function utility:drawObject(type, prop) local obj = Drawing.new(type) -- if prop then for i,v in next, prop do obj[i] = v; end end return obj end -- function utility:characterClone(Player, Color, Material, Transparency, Parent) for i,v in pairs(Player.Character:GetChildren()) do if table.find(utility.bodyParts, v.Name) and v:IsA("MeshPart") and v.Name ~= "HumanoidRootPart" then if v.Name == "UpperTorso" or v.Name == "LowerTorso" then local ClonedPart = Instance.new("Part") ClonedPart.Anchored = true ClonedPart.CanCollide = false ClonedPart.Position = v.Position ClonedPart.Parent = Parent ClonedPart.Material = Enum.Material[Material] ClonedPart.Transparency = Transparency ClonedPart.Color = Color ClonedPart.Size = v.Size + Vector3.new(0.01,0.01,0.01) ClonedPart.Name = v.Name ClonedPart.Rotation = v.Rotation ClonedPart.Shape = "Block" else local ClonedPart = Instance.new("MeshPart") ClonedPart.Anchored = true ClonedPart.CanCollide = false ClonedPart.Position = v.Position ClonedPart.Parent = Parent ClonedPart.Material = Enum.Material[Material] ClonedPart.Transparency = Transparency ClonedPart.Color = Color ClonedPart.Size = v.Size + Vector3.new(0.01,0.01,0.01) ClonedPart.Name = v.Name ClonedPart.Rotation = v.Rotation ClonedPart.MeshId = v.MeshId end end end end -- function utility:Remove(Player) if connections[Player] then connections[Player]:Disconnect(); end -- if highlights[Player] then highlights[Player].Parent = nil; end end -- function utility:AngleToEdge(angle, inset) -- credits to whoever made this Im just porting over my old arrows 😭 local pos local ox = Cos(angle) local oy = Sin(angle) local slope = oy / ox -- local h_edge = viewportSize.x - inset local v_edge = viewportSize.y - inset if oy < 0 then v_edge = inset end if ox < 0 then h_edge = inset end local y = (slope * h_edge) + (viewportSize.y / 2) - slope * (viewportSize.x / 2) if y > 0 and y < viewportSize.y - inset then pos = NewVector2(h_edge, y) else pos = NewVector2( (v_edge - viewportSize.y / 2 + slope * (viewportSize.x / 2)) / slope, v_edge ) end return pos end -- function utility:Map(N, OldMin, OldMax, Min, Max) -- I love my 1 line funcs I use once ♥😻 return (N - OldMin) / (OldMax - OldMin) * (Max - Min) + Min end -- function utility:getRotate(Vec, Rads) -- I didnt make this math credits to whoever can code cool maths! local vec = Vec.Unit local sin = math.sin(Rads) local cos = math.cos(Rads) local x = (cos * vec.x) - (sin * vec.y) local y = (sin * vec.x) + (cos * vec.y) -- return NewVector2(x, y).Unit * Vec.Magnitude end -- function utility:BoxCalculation(TorsoSize) local UpCalculation = NewCFrame(TorsoSize) local VTop = TorsoSize + (UpCalculation.UpVector * 1.8) + Camera.CFrame.UpVector; local VBottom = TorsoSize - (UpCalculation.UpVector * 2.5) - Camera.CFrame.UpVector; local Top, TopIsRendered = Camera:WorldToViewportPoint(VTop); local Bottom, BottomIsRendered = Camera:WorldToViewportPoint(VBottom); local Width = math.max(math.floor(math.abs(Top.x - Bottom.x)), 3); local Height = math.max(math.floor(math.max(math.abs(Bottom.y - Top.y), Width / 2)), 3); local BoxSize = NewVector2(math.floor(math.max(Height / 1.5, Width)), Height); local BoxPosition = NewVector2(math.floor(Top.x * 0.5 + Bottom.x * 0.5 - BoxSize.x * 0.5), math.floor(math.min(Top.y, Bottom.y))); return BoxSize, BoxPosition; end -- local LastRayIgnoreUpdate, RayIgnoreList = 0, {} -- function utility:checkRay(Instance, Distance, Position, Unit) local Pass = true; local Model = Instance.Character; if Distance > 999 then return false; end if not Model then return false end local _Ray = Ray.new(Position, Unit * Distance) if tick() - LastRayIgnoreUpdate > 3 then LastRayIgnoreUpdate = tick() table.clear(RayIgnoreList) table.insert(RayIgnoreList, LocalPlayer.Character) if utility:getHeld() then table.insert(RayIgnoreList, utility:getHeld().Handle) end table.insert(RayIgnoreList, Camera) if Mouse.TargetFilter then table.insert(RayIgnoreList, Mouse.TargetFilter) end if #IgnoreList > 64 then while #IgnoreList > 64 do table.remove(IgnoreList, 1) end end for i, v in pairs(IgnoreList) do table.insert(RayIgnoreList, v) end end local Hit = workspace:FindPartOnRayWithIgnoreList(_Ray, RayIgnoreList) if Hit and not Hit:IsDescendantOf(Model) then Pass = false; if Hit.Transparency >= .3 or not Hit.CanCollide and Hit.ClassName ~= Terrain then table.insert(IgnoreList, Hit) end end return Pass; end -- function utility:GetOrigin() local Tool = utility:getHeld() -- return (Tool ~= "None" and Tool.Handle.Position) or Camera.CFrame.Position end -- function utility:Lerp(Value, MinColor, MaxColor) if Value <= 0 then return MaxColor end if Value >= 100 then return MinColor end -- return Color3.new( MaxColor.R + (MinColor.R - MaxColor.R) * Value, MaxColor.G + (MinColor.G - MaxColor.G) * Value, MaxColor.B + (MinColor.B - MaxColor.B) * Value ) end end -- // Framework Functions do function framework:selectTarget() local deathLoop; local deathLoopRestore; local espTarget = false; -- if flags["Target Auto Select"] then return end if flags["Silent Enabled"] then if flags["Silent_Bind"] then utility.target = utility:getClosestPlayerToCursor(math.huge); -- if (flags["Target Esp"] and flags["PlayerESP_Enabled"] == false) then Visuals:Create({Player = utility.target}) espTarget = true end -- if flags["Notify"] then Library:Notification("Locked onto: " .. utility.target.Name .. "", 3, Library.Accent, flags["Notification Position"]) end -- if (flags["Back Track Enabled"] and flags["Back Track Method"] == "Follow") then utility:characterClone(utility.target, flags["Back Track Settings"].Color, flags["Back Track Material"], flags["Back Track Settings"].Transparency, utility.folders["Part Chams"]) end -- if flags["Spectate"] then Camera.CameraSubject = utility.target.Character.Humanoid end else -- What the fuck why does this break? I dont know dont ask me >:( LocalPlayer.Character.Humanoid.AutoRotate = true; Camera.CameraSubject = LocalPlayer.Character.Humanoid; utility.folders["Part Chams"]:ClearAllChildren(); -- if (Visuals.Bases[utility.target] and flags["PlayerESP_Enabled"] == false) then Visuals.Bases[utility.target]:Remove() end -- if utility.target then utility:Remove(utility.target); end -- utility.drawings["Tracer"].Visible = false; utility.target = nil; end end end -- function framework:aimAssist() local Enabled = flags["Aim Assist"] and flags["Aim Assist Bind"] if not Enabled then return end -- local endPosition; local fovCheck; local Resolver, Prediction = flags["Resolver"], flags["Aim Assist Manual Prediction Value"] or 0.1413 local Target = utility.target or aimAssistTarget local Part = (flags["Aim Assist Jump Prediction"] and Target.Character.Humanoid.FloorMaterial == Enum.Material.Air and "RightFoot") or flags["Aim Assist Single Hit Part"] local characterOffset = Resolver and framework:calculateResolverOffset(Target) * Prediction or Target.Character.HumanoidRootPart.Velocity * Prediction local yOffset = Target.Character.Humanoid.FloorMaterial == Enum.Material.Air and flags["Aim Assist Manual Offset Value"] or 0 local Checks = framework:getChecks(Target, table.find(flags["Aim Assist Checks"], "Friend Check"), table.find(flags["Aim Assist Checks"], "Wall Check"), table.find(flags["Aim Assist Checks"], "Knocked Check"), table.find(flags["Aim Assist Checks"], "Grabbed Check")); -- local characterPosition = Target.Character[Part].Position + characterOffset + NewVector3(0, yOffset, 0) -- local Position = Camera:WorldToViewportPoint(Target.Character.PrimaryPart.Position) local Magnitude = (NewVector2(Position.X, Position.Y) - NewVector2(Mouse.X, Mouse.Y)).magnitude -- if utility.drawings["Aim Assist FOV"].Visible then fovCheck = Magnitude < utility.drawings["Aim Assist FOV"].Radius else fovCheck = true end -- if Checks and fovCheck then fovCheck = Magnitude -- if flags["Aim Assist Method"] == "Use Mouse" then endPosition, OnScreen = Camera:WorldToScreenPoint(characterPosition) -- if OnScreen then mousemoverel(NewVector2(endPosition.X - Mouse.X, endPosition.Y - Mouse.Y).X / (flags["Horizontal Smoothness"] + 1), NewVector2(endPosition.X - Mouse.X, endPosition.Y - Mouse.Y).Y / (flags["Vertical Smoothness"] + 1)) end else Camera.CFrame = Camera.CFrame:Lerp(NewCFrame(Camera.CFrame.p, characterPosition), (100 - flags["Smoothness"]) / 100) end end end -- function framework:desyncInit() -- thanks wendigo for this or whoever made it local Root = LocalPlayer.Character.HumanoidRootPart local rootVel = Root.Velocity; local rootAng = Random(-180, 180) local rootOffset do local X = Random(-128^2, 128^2); local Y = Random(0, 128^2); local Z = Random(-128^2, 128^2); rootOffset = NewVector3(X, -Y, Z); end; LocalPlayer.Character.HumanoidRootPart.CFrame *= Angle(0, Rad(rootAng), 0); LocalPlayer.Character.HumanoidRootPart.Velocity = rootOffset; RunService.RenderStepped:Wait(); LocalPlayer.Character.HumanoidRootPart.CFrame *= Angle(0, Rad(-rootAng), 0); LocalPlayer.Character.HumanoidRootPart.Velocity = rootVel; end -- function framework:autoReload() local Tool = utility:getHeld() if flags["Auto Reload"] then if Tool.Ammo.Value == 0 then Remote:FireServer("Reload", Tool) end end end -- function framework:worldVisuals() if flags["Master Switch"] then if flags["Clock Time Enabled"] and Lighting.ClockTime ~= flags["Clock Time"] then Lighting.ClockTime = flags["Clock Time"] end -- if flags["Color Shift Bottom"] and Lighting.ColorShift_Bottom ~= flags["Color Shift Bottom Color"] then Lighting.ColorShift_Bottom = flags["Color Shift Bottom Color"].Color end if flags["Ambient"] and Lighting.Ambient ~= flags["Ambience Color"] then Lighting.Ambient = flags["Ambience Color"].Color end -- if flags["Outdoor Ambience"] and Lighting.OutdoorAmbient ~= flags["Outdoor Ambience color"] then Lighting.OutdoorAmbient = flags["Outdoor Ambience color"].Color end -- if flags["Brightness Enabled"] and Lighting.Brightness ~= flags["Brightness"] then Lighting.Brightness = flags["Brightness"] end -- if flags["Color Shift Top"] and Lighting.ColorShift_Top ~= flags["Color Shift Top Color"] then Lighting.ColorShift_Top = flags["Color Shift Top Color"].Color end -- if flags["Fog"] and Lighting.FogColor ~= flags["Fog Color"] then Lighting.FogColor = flags["Fog Color"].Color end end end -- function framework:cframeSpeed() if flags["Speed Enabled"] and flags["Speed Key"] then local Character = LocalPlayer.Character local Move_Direction = Character.Humanoid.MoveDirection -- Character.HumanoidRootPart.CFrame = Character.HumanoidRootPart.CFrame + (Move_Direction * (flags["Speed"] / 25)) end end -- function framework:chatSpam(Type, Repeat, Emojis, Symbols) local message = "" -- tp, rp, emojis, symbols for i = 1, Repeat and math.random(2, 5) or 1 do for i = 1, math.random(1, 5) do local index = math.random(0, 1) == 0 and "symbols" or "emojis" if index == "symbols" and Symbols then message ..= tostring(utx[index][math.random(1, #utx[index])]) elseif index == "emojis" and Emojis then message ..= tostring(utx[index][math.random(1, #utx[index])]) end end message ..= utility:checkMessage(Messages[Type]) for i = 1, math.random(1, 5) do local index = math.random(0, 1) == 0 and "symbols" or "emojis" if index == "symbols" and Symbols then message ..= tostring(utx[index][math.random(1, #utx[index])]) elseif index == "emojis" and Emojis then message ..= tostring(utx[index][math.random(1, #utx[index])]) end end message ..= " " end return message end -- function framework:fly(delta) if flags["Fly Enabled"] and flags["Fly Key"] then LocalPlayer.Character.HumanoidRootPart.Velocity = Vector3.zero; local x = 0 local y = 0 local z = 0 -- if not Typing then if InputService:IsKeyDown(Enum.KeyCode.W) then z -= 1 end -- if InputService:IsKeyDown(Enum.KeyCode.S) then z += 1 end -- if InputService:IsKeyDown(Enum.KeyCode.D) then x += 1 end -- if InputService:IsKeyDown(Enum.KeyCode.A) then x -= 1 end -- if InputService:IsKeyDown(Enum.KeyCode.Space) then y += 1 end -- if InputService:IsKeyDown(Enum.KeyCode.LeftShift) then y -= 1 end end -- local direction = utility:safeUnit(Camera.CFrame:VectorToWorldSpace(NewVector3(x, 0, z)).Unit) LocalPlayer.Character.HumanoidRootPart.CFrame += (direction + NewVector3(0, y, 0)) * (flags["Fly Speed"] / 10) * (delta * 60) end end -- function framework:selectPrediction() local Prediction; local Predictions = { 0.113, 0.115, 0.117, 0.11923283912031938191231281632312637123821763333312731833, 0.121316378910319876472890149871624, 0.124521314351673817351423414, 0.131314253678192031927365421456789331, 0.1355991245213413214231231123121, 0.138312341526738912, 0.146432786576847627781237813281381382038198391293, 0.1512783311111111111111111111111111111111111, 0.15132132132132132555555555555555, } if flags["Auto Prediction"] then for i = 1, #Predictions do if game:GetService("Stats").Network.ServerStatsItem["Data Ping"]:GetValue() <= i * 10 then Prediction = Predictions[i] end end end return Prediction or tonumber(flags["Manual Prediction Value"]) or 0.1413 end -- function framework:calculateResolverOffset(player) local Offset; local Prediction = framework:selectPrediction() -- if flags["Resolver"] then if flags["Resolver Method"] == "Recalculate Velocity" then Offset = utility:RecalculateVelocity(player) * Prediction elseif flags["Resolver Method"] == "Suppress Velocity" then Offset = Vector3.new(player.Character.HumanoidRootPart.Velocity.X, 0, player.Character.HumanoidRootPart.Velocity.Z) * Prediction elseif flags["Resolver Method"] == "Move Direction" then Offset = player.Character.Humanoid.MoveDirection * 19.64285714289 * Prediction end end -- return Offset end -- function framework:calculateNearestPart(Player, List) local shortestDistance = math.huge local closestPart if Player and Player.Character and Player.Character:FindFirstChild("Humanoid") and Player.Character:FindFirstChild("Head") and Player.Character.Humanoid.Health ~= 0 and Player.Character:FindFirstChild("HumanoidRootPart") then for i, v in pairs(Player.Character:GetChildren()) do if v:IsA("BasePart") then local pos = Camera:WorldToViewportPoint(v.Position) local magnitude = (NewVector2(pos.X, pos.Y) - NewVector2(Mouse.X, Mouse.Y+36)).magnitude if magnitude < shortestDistance and table.find(List, v.Name) then closestPart = v shortestDistance = magnitude end end end return closestPart end end -- local autoSelectTick = 0; function framework:autoSelect() if autoSelectTick - tick() < flags["Auto Select Delay"]/1000 then autoSelectTick = tick() local closestPlayer local shortestDistance = math.huge -- Start with a very large distance for _, player in next, Players:GetPlayers() do if player.Character and player.Character:FindFirstChild("HumanoidRootPart") and player ~= game.Players.LocalPlayer and framework:getChecks(player, table.find(flags["Silent Checks"], "Friend Check"), table.find(flags["Silent Checks"], "Wall Check"), table.find(flags["Silent Checks"], "Knocked Check"), table.find(flags["Silent Checks"], "Grabbed Check")) then local distance = (LocalPlayer.Character.HumanoidRootPart.Position - player.Character.HumanoidRootPart.Position).magnitude if distance < shortestDistance then utility.target = player shortestDistance = distance end end end end end -- function framework:getChecks(Player, Friend, Wall, Knocked, Grabbed, ToolHeld) local Checks = true -- if Friend and LocalPlayer:IsFriendsWith(Player.UserId) then Checks = false end if Wall then Checks = utility:checkRay(Player, (Camera.CFrame.Position - Player.Character.Head.Position).Magnitude, Camera.CFrame.Position, (Player.Character.Head.Position - Camera.CFrame.Position).unit) end if Knocked and Player.Character.BodyEffects["K.O"].Value == true then Checks = false end if Grabbed and Player.Character:FindFirstChild("GRABBING_CONSTRAINT") then Checks = false end if ToolHeld and not (LocalPlayer.Character and LocalPlayer.Character:FindFirstChildWhichIsA("Tool")) then Checks = false end -- return Checks end end -- // Esp Functions do -- functions for drawing the mf esp :money_face: function Visuals:Draw(Type, Properties) local Drawing = Drawing.new(Type) -- for Property, Value in pairs(Properties) do Drawing[Property] = Value end -- table.insert(Visuals.Drawings, Drawing) -- return Drawing end -- function Visuals:Create(Properties) if Properties then if Properties.Player then local Self = setmetatable({ Player = Properties.Player, Info = { Tick = tick(), gunTick = tick() }, Renders = { Weapon = Visuals:Draw("Text", {Text = "Weapon", Visible = false, Size = 13, Center = true, Color = NewHex("#ffffff"), Outline = true, OutlineColor = NewHex("#000000"), Font = Drawing.Fonts.Plex}), --Distance = Visuals:Draw("Text", {Text = "Distance", Visible = false, Size = 13, Center = true, Color = NewHex("#ffffff"), Outline = true, OutlineColor = NewHex("#000000"), Font = Drawing.Fonts.Plex}), HealthOutline = Visuals:Draw("Square", {Thickness = 1, Visible = false, Filled = true, Color = NewHex("#000000")}), Health = Visuals:Draw("Square", {Thickness = 1, Visible = false, Filled = true, Color = NewHex("#09ff00")}), HealthText = Visuals:Draw("Text", {Text = "100", Visible = false, Size = 13, Center = true, Color = NewHex("#09ff00"), Outline = true, OutlineColor = NewHex("#000000"), Font = 2}), Box = Visuals:Draw("Square", {Thickness = 1, Visible = false, Filled = false, Color = NewHex("#000000")}), BoxFill = Visuals:Draw("Square", {Thickness = 1, Visible = false, Filled = true, Color = NewHex("#000000")}), BoxOutline = Visuals:Draw("Square", {Thickness = 2, Visible = false, Filled = false, Color = NewHex("#000000")}), BoxInline = Visuals:Draw("Square", {Thickness = 1, Visible = false, Filled = false, Color = NewHex("#C30B00")}), Name = Visuals:Draw("Text", {Text = "Name", Visible = false, Size = 13, Center = true, Color = NewHex("#ffffff"), Outline = true, OutlineColor = NewHex("#000000"), Font = Drawing.Fonts.Plex}), Flag = Visuals:Draw("Text", {Text = "Flag", Visible = false, Size = 13, Center = false, Color = NewHex("#ffffff"), Outline = true, OutlineColor = NewHex("#000000"), Font = Drawing.Fonts.Plex}), Tool = Visuals:Draw("Text", {Text = "Tool", Visible = false, Size = 13, Center = false, Color = NewHex("#ffffff"), Outline = true, OutlineColor = NewHex("#000000"), Font = Drawing.Fonts.Plex}), ArmorBarOutline = Visuals:Draw("Square", {Thickness = 1, Visible = false, Filled = true, Color = NewHex("#000000")}), ArmorBar = Visuals:Draw("Square", {Thickness = 1, Visible = false, Filled = true, Color = NewHex("#09ff00")}), Arrow = Visuals:Draw("Triangle", {Visible = false, Color = NewHex("#ffffff")}), ArrowOutline = Visuals:Draw("Triangle", {Visible = false, Color = NewHex("#ffffff")}), ArmorBarText = Visuals:Draw("Text", {Text = "100", Visible = false, Size = 13, Center = true, Color = NewHex("#09ff00"), Outline = true, OutlineColor = NewHex("#000000"), Font = 2}), GunIcon = Visuals:Draw("Image", {Data = "", Transparency = 1, Visible = false, Size = NewVector2(129,55)}), Corners = {}, }, Highlight = Instance.new("Highlight", game.CoreGui), }, {__index = Visuals.Base}) -- do -- // Corner Boxes for Index = 9, 16 do Self.Renders.Corners[Index] = Visuals:Draw("Line", {Thickness = 3, Color = NewHex("#000000")}) end -- for Index = 1, 8 do Self.Renders.Corners[Index] = Visuals:Draw("Line", {Thickness = 0, Color = NewHex("#1A66FF")}) end end -- Self.Highlight.Parent = game.CoreGui -- Visuals.Bases[Properties.Player] = Self -- return Self end end end -- function Visuals.Base:Opacity(State) local Self = self -- if Self then local Renders = rawget(Self, "Renders") -- for Index, Drawing in pairs(Renders) do if Index ~= "Corners" then Drawing.Visible = State -- what end end -- for Index = 1, 16 do Self.Renders.Corners[Index].Visible = State end -- if not State then Self.Info.RootPosition = nil Self.Info.Health = nil Self.Info.MaxHealth = nil end end end -- function Visuals.Base:Remove() local Self = self -- if Self then setmetatable(Self, {}) -- Visuals.Bases[Self.Player] = nil -- Self.Object = nil -- for Index, Drawing in pairs(Self.Renders) do if Index ~= "Corners" then Drawing:Remove() end end -- for Index = 1, 16 do Self.Renders.Corners[Index]:Remove() end -- Self.Highlight.Parent = nil; Self.Highlight = nil; -- Self.Renders = nil Self = nil end end -- function Visuals.Base:Update() local Self = self local Add = 0; -- if Self then local Renders = rawget(Self, "Renders") local Player = rawget(Self, "Player") local Info = rawget(Self, "Info") local Highlights = rawget(Self, "Highlight") local Parent = Player.Parent -- if (Player and Parent and Parent ~= nil) or (Info.RootPosition and Info.Health and Info.MaxHealth) then if Player then local Object, Humanoid, RootPart = utility:getPlayerInformation(Player) local TransparencyMultplier = 1 -- if Object and Object.Parent and (Humanoid and RootPart) then local Health, MaxHealth = Humanoid.Health, Humanoid.MaxHealth -- if Health > 0 then Info.Pass = true Info.RootPosition = RootPart.Position Info.Health = Health Info.MaxHealth = MaxHealth Info.ArmorValue = Object:FindFirstChild("BodyEffects") and Object["BodyEffects"]:FindFirstChild("Armor") and Object["BodyEffects"]:FindFirstChild("Armor").Value Info.ToolHeld = (Object:FindFirstChildOfClass("Tool") and Object:FindFirstChildOfClass("Tool").Name) or "None" else Info.Pass = false end else Info.Pass = false end -- if Info.Pass then Info.Tick = tick() else local FadeTime = (250 / (2 * 100)) local Value = Info.Tick - tick() -- if Value <= FadeTime then TransparencyMultplier = Clamp((Value + FadeTime) * 1 / FadeTime, 0, 1) else Info.RootPosition = nil Info.Health = nil Info.MaxHealth = nil end end -- if Info.RootPosition and Info.Health and Info.MaxHealth and (Object and Humanoid and RootPart) then local DistanceToPlayer = (Camera.CFrame.Position - Info.RootPosition).Magnitude local Position, OnScreen = Camera:WorldToViewportPoint(Info.RootPosition) -- local Size, BoxSize, BoxPosition, BoxCenter, TL, BL, TR, BR -- if OnScreen then local MaxDistance = tonumber(flags["ESP Distance"]) -- if DistanceToPlayer <= MaxDistance then BoxSize, BoxPosition = utility:BoxCalculation(Info.RootPosition) -- if (flags["PlayerESP_Box"] == true and flags["PlayerESP_Box_Type"] == "Corner") then -- // Corner Boxes BoxCenter = Math:RoundVector(NewVector2(BoxPosition.X + BoxSize.X / 2, BoxPosition.Y + BoxSize.Y / 2)); TL = Math:RoundVector(NewVector2(BoxCenter.X - BoxSize.X / 2, BoxCenter.Y - BoxSize.Y / 2)); BL = Math:RoundVector(NewVector2(BoxCenter.X - BoxSize.X / 2, BoxCenter.Y + BoxSize.Y / 2)); TR = Math:RoundVector(NewVector2(BoxCenter.X + BoxSize.X / 2, BoxCenter.Y - BoxSize.Y / 2)); BR = Math:RoundVector(NewVector2(BoxCenter.X + BoxSize.X / 2, BoxCenter.Y + BoxSize.Y / 2)); end end end -- if (BoxSize and BoxPosition) then local GeneralOpacity = ((1 - 0.2) * TransparencyMultplier) -- for Index, Drawing in pairs(Renders) do if Index ~= "Corners" then if Drawing.Visible then Drawing.Visible = false end end end -- Highlights.Enabled = false -- for Index = 1, 16 do if Renders.Corners[Index].Visible then Renders.Corners[Index].Visible = false end end -- if Player ~= LocalPlayer then do -- // Name if flags["PlayerESP_Name"] then local Name = Renders.Name -- Name.Text = Player.Name Name.Position = NewVector2(BoxSize.X / 2 + BoxPosition.X, BoxPosition.Y - 16) Name.Visible = true Name.Transparency = GeneralOpacity Name.Color = flags["PlayerESP_Name_Color"].Color end end -- do -- // Highlights if flags["PlayerESP_Highlights"] then Highlights.Enabled = true Highlights.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop Highlights.FillColor = flags["PlayerESP_HighlightFillSettings"].Color Highlights.OutlineColor = flags["PlayerESP_HighlightOutlineSettings"].Color Highlights.Adornee = Object Highlights.OutlineTransparency = flags["PlayerESP_HighlightOutlineSettings"].Transparency Highlights.FillTransparency = flags["PlayerESP_HighlightOutlineSettings"].Transparency end end -- do -- // Corner Boxes if flags["PlayerESP_Box"] then if flags["PlayerESP_Box_Type"] == "Corner" then local BoxCorners, BoxColor1, BoxColor2 = Renders.Corners, flags["PlayerESP_Box_Color1"].Color, flags["PlayerESP_Box_Color2"].Color -- // Inlines do BoxCorners[1].Visible = true BoxCorners[1].From = TL BoxCorners[1].To = BoxCorners[1].From + NewVector2(0, BoxSize.X / 3) BoxCorners[1].Color = BoxColor1 -- BoxCorners[2].Visible = true BoxCorners[2].From = TL + NewVector2(1, 0) BoxCorners[2].To = BoxCorners[2].From + NewVector2(BoxSize.X / 3, 0) BoxCorners[2].Color = BoxColor1 -- BoxCorners[3].Visible = true BoxCorners[3].From = TR BoxCorners[3].To = BoxCorners[3].From + NewVector2(-BoxSize.X / 3, 0) BoxCorners[3].Color = BoxColor1 -- BoxCorners[4].Visible = true BoxCorners[4].From = TR BoxCorners[4].To = BoxCorners[4].From + NewVector2(0, BoxSize.X / 3) BoxCorners[4].Color = BoxColor1 -- BoxCorners[5].Visible = true BoxCorners[5].From = BR + NewVector2(0, 1) BoxCorners[5].To = BoxCorners[5].From + NewVector2(0, -BoxSize.X / 3) BoxCorners[5].Color = BoxColor1 -- BoxCorners[6].Visible = true BoxCorners[6].From = BR BoxCorners[6].To = BoxCorners[6].From + NewVector2(-BoxSize.X / 3, 0) BoxCorners[6].Color = BoxColor1 -- BoxCorners[7].Visible = true BoxCorners[7].From = BL + NewVector2(0, 1) BoxCorners[7].To = BoxCorners[7].From + NewVector2(0, -BoxSize.X / 3) BoxCorners[7].Color = BoxColor1 -- BoxCorners[8].Visible = true BoxCorners[8].From = BL BoxCorners[8].To = BoxCorners[8].From + NewVector2(BoxSize.X / 3, 0) BoxCorners[8].Color = BoxColor1 end -- // Outlines do BoxCorners[9].Visible = true BoxCorners[9].From = BoxCorners[1].From + NewVector2(0, -1) BoxCorners[9].To = BoxCorners[1].To + NewVector2(0, 1) BoxCorners[9].Color = BoxColor2 -- BoxCorners[10].Visible = true BoxCorners[10].From = BoxCorners[2].From BoxCorners[10].To = BoxCorners[2].To + NewVector2(1, 0) BoxCorners[10].Color = BoxColor2 -- BoxCorners[11].Visible = true BoxCorners[11].From = BoxCorners[3].From + NewVector2(2, 0) BoxCorners[11].To = BoxCorners[3].To + NewVector2(-1, 0) BoxCorners[11].Color = BoxColor2 -- BoxCorners[12].Visible = true BoxCorners[12].From = BoxCorners[4].From BoxCorners[12].To = BoxCorners[4].To + NewVector2(0, 1) BoxCorners[12].Color = BoxColor2 -- BoxCorners[13].Visible = true BoxCorners[13].From = BoxCorners[5].From BoxCorners[13].To = BoxCorners[5].To + NewVector2(0, -1) BoxCorners[13].Color = BoxColor2 -- BoxCorners[14].Visible = true BoxCorners[14].From = BoxCorners[6].From + NewVector2(2, 0) BoxCorners[14].To = BoxCorners[6].To + NewVector2(-1, 0) BoxCorners[14].Color = BoxColor2 -- BoxCorners[15].Visible = true BoxCorners[15].From = BoxCorners[7].From BoxCorners[15].To = BoxCorners[7].To + NewVector2(0, -1) BoxCorners[15].Color = BoxColor2 -- BoxCorners[16].Visible = true BoxCorners[16].From = BoxCorners[8].From + NewVector2(-1, 0) BoxCorners[16].To = BoxCorners[8].To + NewVector2(1, 0) BoxCorners[16].Color = BoxColor2 end -- for Index = 1, 16 do BoxCorners[Index].Transparency = GeneralOpacity end else local Box = Renders.BoxInline local BoxOutline = Renders.BoxOutline -- Box.Size = BoxSize Box.Position = BoxPosition Box.Transparency = GeneralOpacity Box.Color = flags["PlayerESP_Box_Color1"].Color Box.Visible = true -- BoxOutline.Size = BoxSize BoxOutline.Position = BoxPosition BoxOutline.Transparency = GeneralOpacity BoxOutline.Color = flags["PlayerESP_Box_Color2"].Color BoxOutline.Visible = true end end -- if flags["PlayerESP_BoxFill"] then local BoxFill = Renders.BoxFill -- BoxFill.Size = BoxSize BoxFill.Position = BoxPosition BoxFill.Transparency = TransparencyMultplier - flags["PlayerESP_BoxFill_Color"].Transparency BoxFill.Color = flags["PlayerESP_BoxFill_Color"].Color BoxFill.Visible = true end end -- do -- // HeatlhBar if flags["PlayerESP_HealthBar"] then local ArmorColor = flags["PlayerESP_ArmorBarColor"].Color local HealthSize = (Floor(BoxSize.Y * (Info.Health / Info.MaxHealth))) local Color = utility:Lerp(Info.Health / Info.MaxHealth, flags["PlayerESP_HealthBar_Color_Higher"].Color, flags["PlayerESP_HealthBar_Color_Low"].Color) local Height = ((BoxPosition.Y + BoxSize.Y) - HealthSize) -- -- // Bars local HealthBarInline, HealthBarOutline, HealthBarValue = Renders.Health, Renders.HealthOutline, Renders.HealthText local HealthBarTransparency = GeneralOpacity -- HealthBarInline.Color = Color HealthBarInline.Size = NewVector2(2, HealthSize) HealthBarInline.Position = NewVector2(BoxPosition.X - 5, Height) HealthBarInline.Visible = true HealthBarInline.Transparency = HealthBarTransparency -- HealthBarOutline.Size = NewVector2(4, BoxSize.Y + 2) HealthBarOutline.Position = NewVector2(BoxPosition.X - 6, BoxPosition.Y - 1) HealthBarOutline.Visible = true HealthBarOutline.Transparency = HealthBarTransparency -- do -- // Value if flags["PlayerESP_HealthNumber"] then local Text = Floor(Info.Health), BoxSize.Y local ArmorText = Renders.ArmorBarText local HealthNumberPosition = NewVector2((BoxPosition.X + 1), BoxPosition.Y + BoxSize.Y) local Offset = flags["PlayerESP_ArmorBar"] and 23 or 18 -- HealthBarValue.Text = Text HealthBarValue.Color = Color HealthBarValue.Position = NewVector2(HealthNumberPosition.X - Offset, HealthNumberPosition.Y - (Info.Health / Info.MaxHealth) * BoxSize.Y) HealthBarValue.Visible = true HealthBarValue.Transparency = HealthBarTransparency -- if flags["PlayerESP_ArmorBar"] then ArmorText.Text = tostring(Info.ArmorValue) ArmorText.Color = ArmorColor ArmorText.Position = NewVector2(HealthNumberPosition.X - Offset, HealthNumberPosition.Y - (Info.ArmorValue / 200) * BoxSize.Y) ArmorText.Visible = true ArmorText.Transparency = HealthBarTransparency end end end -- do if flags["PlayerESP_ArmorBar"] then local ArmorBar, ArmorBarOutline = Renders.ArmorBar, Renders.ArmorBarOutline -- local ArmorSize = (Floor(BoxSize.Y * (Info.ArmorValue / 200))) local ArmorHeight = ((BoxPosition.Y + BoxSize.Y) - ArmorSize) -- ArmorBar.Color = ArmorColor ArmorBar.Size = NewVector2(2, ArmorSize) ArmorBar.Position = NewVector2(BoxPosition.X - 10, ArmorHeight) ArmorBar.Visible = true ArmorBar.Transparency = HealthBarTransparency -- ArmorBarOutline.Size = NewVector2(4, BoxSize.Y + 2) ArmorBarOutline.Position = NewVector2(BoxPosition.X - 11, BoxPosition.Y - 1) ArmorBarOutline.Visible = true ArmorBarOutline.Transparency = HealthBarTransparency end end end end -- do -- // Gun Icons if flags["PlayerESP_GunIcons"] and Info.ToolHeld ~= "None" and images[Info.ToolHeld] ~= nil then local Gun = Renders.GunIcon -- if tick() - Info.gunTick > 0.2 then Info.gunTick = tick() Gun.Data = images[Info.ToolHeld] end Gun.Visible = true Gun.Size = NewVector2(51.9, 22.3) Gun.Position = BoxPosition + NewVector2(BoxSize.X / 2, (BoxSize.Y + 2)) - NewVector2(Gun.Size.X/2, 0) Add += 22.3 else Add = 0 end end -- do -- // Weapon if flags["PlayerESP_Weapon"] then local Weapon = Renders.Weapon -- Weapon.Text = Info.ToolHeld Weapon.Position = BoxPosition + NewVector2(BoxSize.X / 2, (BoxSize.Y + 2) + Add) Weapon.Color = flags["PlayerESP_Weapon_Color"].Color Weapon.Transparency = GeneralOpacity Weapon.Visible = true end end -- do -- // Flag if flags["PlayerESP_Flags"] then local Flag = Renders.Flag local FlagStr = "" -- if Find(flags["PlayerESP_Flag_Options"], "Distance") then FlagStr ..= ("%sm\n"):format(Round(DistanceToPlayer)) end -- if Find(flags["PlayerESP_Flag_Options"], "Knocked") and Player.Character.BodyEffects then FlagStr ..= ("%s\n"):format(tostring(Object.BodyEffects["K.O"].Value and "KNOCKED" or "")) end -- Flag.Text = FlagStr Flag.Position = NewVector2(BoxSize.X + BoxPosition.X + 3, BoxPosition.Y - 2) Flag.Visible = true Flag.Color = flags["PlayerESP_FlagsColor"].Color Flag.Transparency = GeneralOpacity end end else do -- // Name if flags["Self_PlayerESP_Name"] then local Name = Renders.Name -- Name.Text = Player.Name Name.Position = NewVector2(BoxSize.X / 2 + BoxPosition.X, BoxPosition.Y - 16) Name.Visible = true Name.Transparency = GeneralOpacity Name.Color = flags["Self_PlayerESP_Name_Color"].Color end end -- do -- // Highlights if flags["Self_PlayerESP_Highlights"] then Highlights.Enabled = true Highlights.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop Highlights.FillColor = flags["Self_PlayerESP_HighlightFillSettings"].Color Highlights.OutlineColor = flags["Self_PlayerESP_HighlightOutlineSettings"].Color Highlights.Adornee = Object Highlights.OutlineTransparency = flags["Self_PlayerESP_HighlightOutlineSettings"].Transparency Highlights.FillTransparency = flags["Self_PlayerESP_HighlightOutlineSettings"].Transparency end end -- do -- // Corner Boxes if flags["Self_PlayerESP_Box"] then local Box = Renders.BoxInline local BoxOutline = Renders.BoxOutline -- Box.Size = BoxSize Box.Position = BoxPosition Box.Transparency = GeneralOpacity Box.Color = flags["Self_PlayerESP_Box_Color1"].Color Box.Visible = true -- BoxOutline.Size = BoxSize BoxOutline.Position = BoxPosition BoxOutline.Transparency = GeneralOpacity BoxOutline.Color = flags["Self_PlayerESP_Box_Color2"].Color BoxOutline.Visible = true end -- if flags["Self_PlayerESP_Box"] then local BoxFill = Renders.BoxFill -- BoxFill.Size = BoxSize BoxFill.Position = BoxPosition BoxFill.Transparency = TransparencyMultplier - flags["Self_PlayerESP_BoxFill_Color"].Transparency BoxFill.Color = flags["Self_PlayerESP_BoxFill_Color"].Color BoxFill.Visible = true end end -- do -- // HeatlhBar if flags["Self_PlayerESP_HealthBar"] then local ArmorColor = flags["Self_PlayerESP_ArmorBarColor"].Color local HealthSize = (Floor(BoxSize.Y * (Info.Health / Info.MaxHealth))) local Color = utility:Lerp(Info.Health / Info.MaxHealth, flags["Self_PlayerESP_HealthBar_Color_Higher"].Color, flags["Self_PlayerESP_HealthBar_Color_Low"].Color) local Height = ((BoxPosition.Y + BoxSize.Y) - HealthSize) -- -- // Bars local HealthBarInline, HealthBarOutline, HealthBarValue = Renders.Health, Renders.HealthOutline, Renders.HealthText local HealthBarTransparency = GeneralOpacity -- HealthBarInline.Color = Color HealthBarInline.Size = NewVector2(2, HealthSize) HealthBarInline.Position = NewVector2(BoxPosition.X - 5, Height) HealthBarInline.Visible = true HealthBarInline.Transparency = HealthBarTransparency -- HealthBarOutline.Size = NewVector2(4, BoxSize.Y + 2) HealthBarOutline.Position = NewVector2(BoxPosition.X - 6, BoxPosition.Y - 1) HealthBarOutline.Visible = true HealthBarOutline.Transparency = HealthBarTransparency -- do -- // Value if flags["Self_PlayerESP_HealthNumber"] then local Text = Floor(Info.Health), BoxSize.Y local ArmorText = Renders.ArmorBarText local HealthNumberPosition = NewVector2((BoxPosition.X + 1), BoxPosition.Y + BoxSize.Y) local Offset = flags["Self_PlayerESP_ArmorBar"] and 23 or 18 -- HealthBarValue.Text = Text HealthBarValue.Color = Color HealthBarValue.Position = NewVector2(HealthNumberPosition.X - Offset, HealthNumberPosition.Y - (Info.Health / Info.MaxHealth) * BoxSize.Y) HealthBarValue.Visible = true HealthBarValue.Transparency = HealthBarTransparency -- if flags["Self_PlayerESP_ArmorBar"] then ArmorText.Text = tostring(Info.ArmorValue) ArmorText.Color = ArmorColor ArmorText.Position = NewVector2(HealthNumberPosition.X - Offset, HealthNumberPosition.Y - (Info.ArmorValue / 200) * BoxSize.Y) ArmorText.Visible = true ArmorText.Transparency = HealthBarTransparency end end end -- do if flags["Self_PlayerESP_ArmorBar"] then local ArmorBar, ArmorBarOutline = Renders.ArmorBar, Renders.ArmorBarOutline -- local ArmorSize = (Floor(BoxSize.Y * (Info.ArmorValue / 200))) local ArmorHeight = ((BoxPosition.Y + BoxSize.Y) - ArmorSize) -- ArmorBar.Color = ArmorColor ArmorBar.Size = NewVector2(2, ArmorSize) ArmorBar.Position = NewVector2(BoxPosition.X - 10, ArmorHeight) ArmorBar.Visible = true ArmorBar.Transparency = HealthBarTransparency -- ArmorBarOutline.Size = NewVector2(4, BoxSize.Y + 2) ArmorBarOutline.Position = NewVector2(BoxPosition.X - 11, BoxPosition.Y - 1) ArmorBarOutline.Visible = true ArmorBarOutline.Transparency = HealthBarTransparency end end end end -- do -- // Gun Icons if flags["Self_PlayerESP_GunIcons"] and Info.ToolHeld ~= "None" and images[Info.ToolHeld] ~= nil then local Gun = Renders.GunIcon -- if tick() - Info.gunTick > 0.75 then Info.gunTick = tick() Gun.Data = images[Info.ToolHeld] end Gun.Visible = true Gun.Size = NewVector2(51.9, 22.3) Gun.Position = BoxPosition + NewVector2(BoxSize.X / 2, (BoxSize.Y + 2)) - NewVector2(Gun.Size.X/2, 0) Add += 22.3 else Add = 0 end end -- do -- // Weapon if flags["Self_PlayerESP_Weapon"] then local Weapon = Renders.Weapon -- Weapon.Text = Info.ToolHeld Weapon.Position = BoxPosition + NewVector2(BoxSize.X / 2, (BoxSize.Y + 2) + Add) Weapon.Color = flags["Self_PlayerESP_Weapon_Color"].Color Weapon.Transparency = GeneralOpacity Weapon.Visible = true end end -- do -- // Flag if flags["Self_PlayerESP_Flags"] then local Flag = Renders.Flag local FlagStr = "" -- if Find(flags["Self_PlayerESP_Flag_Options"], "Distance") then FlagStr ..= ("%sm\n"):format(Round(DistanceToPlayer)) end -- if Find(flags["Self_PlayerESP_Flag_Options"], "Knocked") and Player.Character.BodyEffects then FlagStr ..= ("%s\n"):format(tostring(Object.BodyEffects["K.O"].Value and "KNOCKED" or "")) end -- Flag.Text = FlagStr Flag.Position = NewVector2(BoxSize.X + BoxPosition.X + 3, BoxPosition.Y - 2) Flag.Visible = true Flag.Color = flags["Self_PlayerESP_FlagsColor"].Color Flag.Transparency = GeneralOpacity end end end return end end end -- return Self:Opacity(false) end -- return Self:Remove() end end -- function Visuals:Unload() for Index, Base in pairs(Visuals.Bases) do Base:Remove() end end end -- // Creations + Setting Stuff do utility.drawings["Tracer"] = utility:drawObject("Line", {}) utility.drawings["Aim Assist FOV"] = utility:drawObject("Circle", {Visible = false, Radius = 8, Color = Color3.fromRGB(0,0,0), Filled = false}) utility.drawings["Sub"] = utility:drawObject("Text", {Outline = true, Text = "lunar", Color = Color3.new(1, 1, 1)}) utility.drawings["Domain"] = utility:drawObject("Text", {Outline = true, Text = ".vip", Color = Color3.fromRGB(132, 108, 188)}) -- for i,v in pairs(bodyClone:GetDescendants()) do if v:IsA("BasePart") and v.Name ~= "HumanoidRootPart" then v.CanCollide = false v.Transparency = 0 end end -- drawing lines for crosshair do for Index = 1, 4 do local line = utility:drawObject("Line",{ Visible = false, Color = Color3.fromRGB(255,255,255), Thickness = 1, ZIndex = 2, Transparency = 1 }) -- crosshair_Lines[Index] = line -- local line_1 = utility:drawObject("Line",{ Visible = false, Color = Color3.fromRGB(0, 0, 0), Thickness = 2.5, ZIndex = 1, Transparency = 1 }) -- crosshair_Outlines[Index] = line_1 end end -- // Chat spam framework do Messages = { ["Scottish"] = { "You Grandma Still Wears Shin Pads To Work 🤣🤣", "Melon Head", "Your Ma Is A Bin Man 🤣🤣", "Taped You Like I Did To Your Ma", "Fore Headed Mong", "Such A Fruit", "YoUr A BoOt", "keep Trying You Jobby", }, ["Lunar"] = { "Owned By Lunar", "Lunar Lunar Lunar RAHHHHH", "Slammed by Lunar", "YOU GOT SLAMMED BY LUNAR", "SEEMS LIKE YOU NEED LUNAR GG/LUNARVIP", "GG/LUNARVIP GG/LUNARVIP GG/LUNARVIP", "GG/LUNARVIP <-- THIS WILL LET YOU COPE WITH YOUR ISSUES", "WHAT YOU CANT BEAT LUNAR?", "PRO TIP: BUY LUNAR", }, } utx = { ["symbols"] = { "~", "!", "@", "#", "$", "%", "^", "&", "*", "(", ")", "_", "+", "{", "}", "|", ":", '"', "<", ">", "?", ".", ",", "/", "'", }, ["emojis"] = { "😎", "🤣", "👀", "🙄", "🔥", "😅", "😂", "😹", "😛", "🤩", "🌈", "😎", "🤠", "😔", "🤡", "💤", "🚶", "🙀", "😂", "📈", "🤏", "🌈", "😎", "🤠", "😔", }, } end end -- // Hit Reg do function HitReg:HitMarker(Gap, Color, Time) local Lines = {} local Hitmarker = true -- for i = 1, 4 do Lines[i] = utility:drawObject("Line", {Color = Color, Visible = true, Transparency = 1, Thickness = 1}) end -- local function setMarkerPos() Lines[1].From = NewVector2(Mouse.X + Gap, (Mouse.Y + Offset) + Gap) Lines[1].To = NewVector2(Mouse.X + (Gap * 2.5), (Mouse.Y + Offset) + (Gap * 2.5)) -- Lines[2].From = NewVector2(Mouse.X + Gap, (Mouse.Y + Offset) - Gap) Lines[2].To = NewVector2(Mouse.X + (Gap * 2.5), (Mouse.Y + Offset) - (Gap * 2.5)) -- Lines[3].From = NewVector2(Mouse.X - Gap, (Mouse.Y + Offset) + Gap) Lines[3].To = NewVector2(Mouse.X - (Gap * 2.5), (Mouse.Y + Offset) + (Gap * 2.5)) -- Lines[4].From = NewVector2(Mouse.X - Gap, (Mouse.Y + Offset) - Gap) Lines[4].To = NewVector2(Mouse.X - (Gap * 2.5), (Mouse.Y + Offset) - (Gap * 2.5)) end -- delay(Time, function() for i = Time, 0, -0.1 do task.wait() for _, Value in next, Lines do Value.Transparency = i end setMarkerPos() end -- for _, Value in next, Lines do Value:Remove() end -- Hitmarker = false end) end -- function HitReg:HitMarker3D(Gap, Color, Time, Hit) local Lines = {} local Hitmarker = true -- for i = 1, 4 do Lines[i] = utility:drawObject("Line", {Color = Color, Visible = true, Transparency = 1, Thickness = 1}) end -- task.spawn(function() while Hitmarker do local Position3D, OnScreen = Camera:WorldToViewportPoint(Hit) -- Lines[1].From = NewVector2(Position3D.X + Gap, Position3D.Y + Gap) Lines[1].To = NewVector2(Position3D.X + (Gap * 2.5), Position3D.Y + (Gap * 2.5)) -- Lines[2].From = NewVector2(Position3D.X + Gap, Position3D.Y - Gap) Lines[2].To = NewVector2(Position3D.X + (Gap * 2.5), Position3D.Y - (Gap * 2.5)) -- Lines[3].From = NewVector2(Position3D.X - Gap, Position3D.Y + Gap) Lines[3].To = NewVector2(Position3D.X - (Gap * 2.5), Position3D.Y + (Gap * 2.5)) -- Lines[4].From = NewVector2(Position3D.X - Gap, Position3D.Y - Gap) Lines[4].To = NewVector2(Position3D.X - (Gap * 2.5), Position3D.Y - (Gap * 2.5)) -- for _, Value in next, Lines do Value.Visible = OnScreen end -- task.wait() end end) -- delay(Time, function() for i = Time, 0, -0.1 do task.wait() for _, Value in next, Lines do Value.Transparency = i end end -- for _, Value in next, Lines do Value:Remove() end -- Hitmarker = false end) end -- function HitReg:HitEffect(Type, Character) local function convert(color) return color.r/5, color.g/5, color.b/5 end -- local function Weld(x,y) local W = Instance.new("Weld") W.Part0 = x W.Part1 = y local CJ = NewCFrame(x.Position) local C0 = x.CFrame:inverse()*CJ local C1 = y.CFrame:inverse()*CJ W.C0 = C0 W.C1 = C1 W.Parent = x end -- if Type == "Confetti" then task.spawn(function() local Confetti_Amount = 20000 local RootPart = Character.HumanoidRootPart local ConfettiClone = hitmodule:Clone() ConfettiClone.RainbowParticles.Rate = Confetti_Amount ConfettiClone.Parent = workspace ConfettiClone.CanCollide = false ConfettiClone.CFrame = RootPart.CFrame -- for i = Confetti_Amount, 0 , -(Confetti_Amount/50) do task.wait() ConfettiClone.RainbowParticles.Rate = i end -- delay(5, function() ConfettiClone:Destroy() end) end) elseif Type == "Nova" then local Effect = Nova:Clone() Effect.Parent = Character.HumanoidRootPart -- for i,v in pairs(Effect:GetChildren()) do v.Rate = 0 v.Color = ColorSequence.new({ColorSequenceKeypoint.new(0, Color3.new(0, 0, 0)), ColorSequenceKeypoint.new(0.5, Color3.new(convert(flags["Hit Effect Settings"].Color))),ColorSequenceKeypoint.new(1, Color3.new(0, 0, 0)),}) v:Emit() end -- delay(2, function() Effect:Destroy() end) else local Clone = SparklesEffect:Clone() Clone.Parent = Character.HumanoidRootPart Clone.LockedToPart = false Clone.Acceleration = Vector3.new(0,-100,0) -- Clone:Emit(15) -- delay(5, function() Clone:Destroy() end) end end -- function HitReg:HitSound(Id, Volume, Pitch) local Sound = Instance.new("Sound", game:GetService("SoundService")); local PitchSound = Instance.new("PitchShiftSoundEffect", Sound) -- Sound.SoundId = "rbxassetid://".. Id .."" --[[writefile("song.mp3", game:HttpGet("https://lunar.feet.media/osiris/cmwr7ecb.mp3")) Sound.SoundId = getcustomasset("song.mp3")]] Sound.Volume = Volume PitchSound.Octave = Pitch Sound.PlayOnRemove = true Sound:Destroy() end end for i,v in pairs(LocalPlayer.Character:GetChildren()) do if v:IsA("BasePart") then table.insert(utility.bodyParts, v.Name) end end -- // Tweens do Tween.EasingStyles = { [Enum.EasingStyle.Linear] = { [Enum.EasingDirection.In] = function(Delta) return Delta end, [Enum.EasingDirection.Out] = function(Delta) return Delta end, [Enum.EasingDirection.InOut] = function(Delta) return Delta end }, [Enum.EasingStyle.Cubic] = { [Enum.EasingDirection.In] = function(Delta) return Delta ^ 3 end, [Enum.EasingDirection.Out] = function(Delta) return ((Delta - 1) ^ 3) + 1 end, [Enum.EasingDirection.InOut] = function(Delta) if 0 <= Delta and Delta <= 0.5 then return (4 * Delta ^ 3) elseif 0.5 <= Delta and Delta <= 1 then return (4 * (Delta - 1) ^ 3) + 1 end end }, [Enum.EasingStyle.Quad] = { [Enum.EasingDirection.In] = function(Delta) return Delta ^ 2 end, [Enum.EasingDirection.Out] = function(Delta) return (-(Delta - 1) ^ 2) + 1 end, [Enum.EasingDirection.InOut] = function(Delta) if 0 <= Delta and Delta <= 0.5 then return (2 * Delta ^ 2) elseif 0.5 <= Delta and Delta <= 1 then return -(2 * (Delta - 1) ^ 2) + 1 end end }, [Enum.EasingStyle.Quart] = { [Enum.EasingDirection.In] = function(Delta) return Delta ^ 4 end, [Enum.EasingDirection.Out] = function(Delta) return (-(Delta - 1) ^ 4) + 1 end, [Enum.EasingDirection.InOut] = function(Delta) if 0 <= Delta and Delta <= 0.5 then return (8 * Delta ^ 4) elseif 0.5 <= Delta and Delta <= 1 then return -(8 * (Delta - 1) ^ 4) + 1 end end }, [Enum.EasingStyle.Quint] = { [Enum.EasingDirection.In] = function(Delta) return Delta ^ 5 end, [Enum.EasingDirection.Out] = function(Delta) return ((Delta - 1) ^ 5) + 1 end, [Enum.EasingDirection.InOut] = function(Delta) if 0 <= Delta and Delta <= 0.5 then return (16 * Delta ^ 5) elseif 0.5 <= Delta and Delta <= 1 then return (16 * (Delta - 1) ^ 5) + 1 end end }, [Enum.EasingStyle.Sine] = { [Enum.EasingDirection.In] = function(Delta) return Sin(((Pi / 2) * Delta) - (Pi / 2)) + 1 end, [Enum.EasingDirection.Out] = function(Delta) return Sin((Pi / 2) * Delta) end, [Enum.EasingDirection.InOut] = function(Delta) return (0.5 * Sin((Pi * Delta) - (Pi / 2))) + 0.5 end }, [Enum.EasingStyle.Exponential] = { [Enum.EasingDirection.In] = function(Delta) return (2 ^ ((10 * Delta) - 10)) - 0.001 end, [Enum.EasingDirection.Out] = function(Delta) return 1.001 * (-2 ^ -(10 * Delta)) + 1 end, [Enum.EasingDirection.InOut] = function(Delta) if 0 <= Delta and Delta <= 0.5 then return 0.5 * (2 ^ ((20 * Delta) - 10)) - 0.0005 elseif 0.5 <= Delta and Delta <= 1 then return 0.50025 * (-2 ^ (-(20 * Delta) + 10)) + 1 end end }, [Enum.EasingStyle.Back] = { [Enum.EasingDirection.In] = function(Delta) return (Delta * Delta) * (Delta * (1.70158 + 1) - 1.70158) end, [Enum.EasingDirection.Out] = function(Delta) return ((Delta - 1) ^ 2) * ((Delta - 1) * (1.70158 + 1) + 1.70158) + 1 end, [Enum.EasingDirection.InOut] = function(Delta) if 0 <= Delta and Delta <= 0.5 then return (2 * (Delta * Delta)) * ((2 * Delta) * (2.5949095 + 1) - 2.5949095) elseif 0.5 <= Delta and Delta <= 1 then return (0.5 * ((2 * Delta) - 2) ^ 2) * (((2 * Delta) - 2) * (2.5949095 + 1) + 2.5949095) + 1 end end }, [Enum.EasingStyle.Bounce] = { [Enum.EasingDirection.In] = function(Delta) if 0 <= Delta and Delta <= (1 / 2.75) then return 7.5625 * (Delta * Delta) elseif (1 / 2.75) <= Delta and Delta <= (2 / 2.75) then return 7.5625 * (Delta - (1.5 / 2.75)) ^ 2 + 0.75 elseif (2 / 2.75) <= Delta and Delta <= (2.5 / 2.75) then return 7.5625 * (Delta - (2.25 / 2.75)) ^ 2 + 0.9375 elseif (2.5 / 2.75) <= Delta and Delta <= 1 then return 7.5625 * (Delta - (2.625 / 2.75)) ^ 2 + 0.984375 end end, [Enum.EasingDirection.Out] = function(Delta) if 0 <= Delta and Delta <= (0.25 / 2.75) then return -7.5625 * (1 - Delta - (2.625 / 2.75)) ^ 2 + 0.015625 elseif (0.25 / 2.75) <= Delta and Delta <= (0.75 / 2.75) then return -7.5625 * (1 - Delta - (2.25 / 2.75)) ^ 2 + 0.0625 elseif (0.75 / 2.75) <= Delta and Delta <= (1.75 / 2.75) then return -7.5625 * (1 - Delta - (1.5 / 2.75)) ^ 2 + 0.25 elseif (1.75 / 2.75) <= Delta and Delta <= 1 then return 1 - 7.5625 * (1 - Delta) ^ 2 end end, [Enum.EasingDirection.InOut] = function(Delta) if 0 <= Delta and Delta <= (0.125 / 2.75) then return 0.5 * (-7.5625 * (1 - (2 * Delta) - (2.625 / 2.75)) ^ 2 + 0.015625) elseif (0.125 / 2.75) <= Delta and Delta <= (0.375 / 2.75) then return 0.5 * (-7.5625 * (1 - (2 * Delta) - (2.25 / 2.75)) ^ 2 + 0.0625) elseif (0.375 / 2.75) <= Delta and Delta <= (0.875 / 2.75) then return 0.5 * (-7.5625 * (1 - (2 * Delta) - (1.5 / 2.75)) ^ 2 + 0.25) elseif (0.875 / 2.75) <= Delta and Delta <= 0.5 then return 0.5 * (1 - 7.5625 * (1 - (2 * Delta)) ^ 2) elseif 0.5 <= Delta and Delta <= (1.875 / 2.75) then return 0.5 + 3.78125 * ((2 * Delta) - 1) ^ 2 elseif (1.875 / 2.75) <= Delta and Delta <= (2.375 / 2.75) then return 3.78125 * ((2 * Delta) - (4.25 / 2.75)) ^ 2 + 0.875 elseif (2.375 / 2.75) <= Delta and Delta <= (2.625 / 2.75) then return 3.78125 * ((2 * Delta) - (5 / 2.75)) ^ 2 + 0.96875 elseif (2.625 / 2.75) <= Delta and Delta <= 1 then return 3.78125 * ((2 * Delta) - (5.375 / 2.75)) ^ 2 + 0.9921875 end end }, [Enum.EasingStyle.Elastic] = { [Enum.EasingDirection.In] = function(Delta) return (-2 ^ (10 * (Delta - 1))) * Sin(((2 * Pi) * (Delta - 1 - (0.3 / 4))) / 0.3) end, [Enum.EasingDirection.Out] = function(Delta) return (2 ^ (-10 * Delta)) * Sin(((2 * Pi) * (Delta - (0.3 / 4))) / 0.3) + 1 end, [Enum.EasingDirection.InOut] = function(Delta) if 0 <= Delta and Delta <= 0.5 then return -0.5 * (2 ^ ((20 * Delta) - 10)) * Sin(((2 * Pi) * ((2 * Delta) - 1.1125)) / 0.45) elseif 0.5 <= Delta and Delta <= 1 then return 0.5 * (2 ^ ((-20 * Delta) + 10)) * Sin(((2 * Pi) * ((2 * Delta) - 1.1125)) / 0.45) + 1 end end }, [Enum.EasingStyle.Circular] = { [Enum.EasingDirection.In] = function(Delta) return -Sqrt(1 - Delta ^ 2) + 1 end, [Enum.EasingDirection.Out] = function(Delta) return Sqrt(-(Delta - 1) ^ 2 + 1) end, [Enum.EasingDirection.InOut] = function(Delta) if 0 <= Delta and Delta <= 0.5 then return -Sqrt(-Delta ^ 2 + 0.25) + 0.5 elseif 0.5 <= Delta and Delta <= 1 then return Sqrt(-(Delta - 1) ^ 2 + 0.25) + 0.5 end end } } end end end -- local crosshair_lineOffsets = utility:generateAngles(4); local Window = Library:Window({Size = UDim2.new(0,580,0,600)}) do -- // Rage local aiming = Window:Page({Name = "Rage", Weapons = true}) do local Settings = aiming:Weapon({Icon = "rbxassetid://6031280882"}) local Visuals = aiming:Weapon({Icon = "rbxassetid://7300480952"}) -- local mainTarget = Settings:Section({Name = "Main", Size = 330}) do mainTarget:Toggle({Name = "Enabled", Flag = "Silent Enabled", Risk = true}) mainTarget:Keybind({Name = "Key", Flag = "Silent_Bind", Mode = "Toggle", callback = function() framework:selectTarget(); bodyClone:SetPrimaryPartCFrame(NewCFrame(9959,9999,9990)) end}) end -- local targetSettings = Settings:Section({Name = "Settings", Size = 330}) do targetSettings:Toggle({Name = "Look At", Flag = "Look At"}) targetSettings:Toggle({Name = "Auto Shoot", Flag = "Auto Shoot"}) targetSettings:Toggle({Name = "Spectate", Flag = "Spectate"}) targetSettings:Toggle({Name = "Notify", Flag = "Notify"}) targetSettings:Toggle({Name = "Aim Viewer Bypass", Flag = "Aim Viewer Bypass"}) end -- local targetMethods = Settings:Section({Name = "Methods", Size = 330}) do targetMethods:Toggle({Name = "Resolver", Flag = "Resolver"}) targetMethods:Dropdown({Name = "Resolver Method", Flag = "Resolver Method", Options = {"Recalculate Velocity", "Suppress Velocity", "Move Direction"}, Default = "Recalculate Velocity"}) end -- local targetPrediction = Settings:Section({Name = "Prediction", Size = 330, Side = "Right"}) do targetPrediction:Toggle({Name = "Auto Prediction", Flag = "Auto Prediction"}) targetPrediction:Textbox({Name = "Prediction", Flag = "Manual Prediction Value", Placeholder = "Prediction"}) targetPrediction:Dropdown({Name = "Hit-Part", Flag = "Single Hit Part", Options = utility.bodyParts, Default = "HumanoidRootPart"}) targetPrediction:Toggle({Name = "Nearest Part", Flag = "Nearest Part"}) targetPrediction:Dropdown({Name = "Closest Hit Part", Flag = "Closest Hit Part", Options = utility.bodyParts, Default = {"HumanoidRootPart"}, Max = 9e9}) targetPrediction:Toggle({Name = "Jump Prediction", Flag = "Jump Prediction"}) targetPrediction:Textbox({Name = "Jump Prediction", Flag = "Manual Offset Value", Placeholder = "Jump Offset"}) targetPrediction:Dropdown({Name = "Air Hit-Part", Flag = "Air Hit Part", Options = utility.bodyParts, Default = "RightFoot"}) end -- local targetChecks = Settings:Section({Name = "Checks", Size = 330, Side = "Right"}) do targetChecks:Dropdown({Name = "Checks", Flag = "Silent Checks", Options = {"Knocked Check", "Wall Check", "Friend Check", "Grabbed Check"}, Max = 9e9}) end -- local targetAutoSelect = Settings:Section({Name = "Auto Select", Size = 330, Side = "Right"}) do targetAutoSelect:Toggle({Name = "Enabled", Flag = "Target Auto Select"}) targetAutoSelect:Slider({Name = "Delay", Suffix = "ms", Flag = 'Auto Select Delay', Min = 0, Max = 1000, Default = 100, Decimals = 1}) end -- local targetStrafe = Settings:Section({Name = "Target Strafe", Size = 330, Side = "Left"}) do targetStrafe:Toggle({Name = "Enabled", Flag = "Target Strafe Enabled", Risk = true}) targetStrafe:Slider({Name = "Radius", Flag = 'Target Strafe Distance', Min = -15, Max = 15, Default = 10, Decimals = 1}) targetStrafe:Slider({Name = "Speed", Flag = 'Target Strafe Speed', Min = -15, Max = 15, Default = 10, Decimals = 1}) targetStrafe:Slider({Name = "Height", Flag = 'Target Strafe Height', Min = -15, Max = 15, Default = 0, Decimals = 1}) end -- local targetVisuals = Visuals:Section({Name = "Visuals", Size = 330, Side = "Left"}) do local line1 = targetVisuals:Toggle({Name = "Line", Flag = "Line Enabled"}) line1:Colorpicker({Default = Color3.fromRGB(255,0,0), Flag = "Line Settings"}); targetVisuals:Slider({Name = "Thickness", Flag = 'Line Thickness', Min = 0, Max = 2, Default = 1, Decimals = 0.01, Callback = function(Int) utility.drawings["Tracer"].Thickness = Int end}) local highlight = targetVisuals:Toggle({Name = "Highlight", Flag = "Highlight Enabled"}) highlight:Colorpicker({Default = Color3.fromRGB(0,255,0), Alpha = 0.5, Flag = "Highlight Fill Color"}); highlight:Colorpicker({Default = Color3.fromRGB(0,125,0), Flag = "Highlight Outline Color"}); local backtrack = targetVisuals:Toggle({Name = "Backtrack", Flag = "Back Track Enabled"}) backtrack:Colorpicker({Default = Color3.fromRGB(255, 0, 0), alpha = 0.65, Flag = "Back Track Settings"}); targetVisuals:Dropdown({Name = "Method", Flag = "Back Track Method", Options = {"Clone", "Follow"}, Default = "Follow"}) targetVisuals:Dropdown({Name = "Material", Flag = "Back Track Material", Options = {"Neon", "Plastic", "ForceField"}, Default = "Neon"}) targetVisuals:Slider({Name = "Delay", Flag = 'Back Track Delay', Min = 0, Max = 1, Default = 1, Decimals = 0.05}) targetVisuals:Toggle({Name = "Target Esp", Flag = "Target Esp"}) end end -- // Legit local legit = Window:Page({Name = "Legit"}) do local Vertical; local Horizontal; local Smoothness; -- local aimAssist = legit:Section({Name = "Aim Assist", Size = 330}) do aimAssist:Toggle({Name = "Enabled", Flag = "Aim Assist"}):Keybind({Name = "Aim Assist", Flag = "Aim Assist Bind", Mode = "Toggle", Callback = function() aimAssistTarget = utility.target or utility:getClosestPlayerToCursor(math.huge) end}) -- portal is a fuckin g local Vertical = aimAssist:Slider({Name = "Horizontal Smoothness", Flag = "Horizontal Smoothness", Min = 0, Max = 100, Default = 20, Decimals = 1}) Vertical:SetVisible(false) local Horizontal = aimAssist:Slider({Name = "Vertical Smoothness", Flag = 'Vertical Smoothness', Min = 0, Max = 100, Default = 20, Decimals = 1}) Horizontal:SetVisible(false) local Smoothness = aimAssist:Slider({Name = "Smoothness", Flag = 'Smoothness', Min = 0, Max = 100, Default = 50, Decimals = 1}) aimAssist:Dropdown({Name = "Method", Flag = "Aim Assist Method", Options = {"Use Mouse", "Use Camera"}, Default = "Use Camera", Callback = function(Option) if Option == "Use Mouse" then Vertical:SetVisible(true) Horizontal:SetVisible(true) Smoothness:SetVisible(false) else Vertical:SetVisible(false) Horizontal:SetVisible(false) Smoothness:SetVisible(true) end end}) end -- local aimAssist_Settings = legit:Section({Name = "Settings", Size = 330}) do aimAssist_Settings:Dropdown({Name = "Hit-Part", Flag = "Aim Assist Single Hit Part", Options = utility.bodyParts, Default = "HumanoidRootPart"}) aimAssist_Settings:Toggle({Name = "Jump Prediction", Flag = "Aim Assist Jump Prediction"}) aimAssist_Settings:Textbox({Name = "Prediction", Flag = "Aim Assist Manual Prediction Value", Placeholder = "Prediction"}) aimAssist_Settings:Textbox({Name = "Jump Offset", Flag = "Aim Assist Manual Offset Value", Placeholder = "Jump Offset"}) end -- local aimAssistFov = legit:Section({Name = "Field Of View", Size = 330}) do aimAssistFov:Toggle({Name = "Enabled", Flag = "Aim Assist Field Of View", Callback = function(Bool) utility.drawings["Aim Assist FOV"].Visible = Bool end}):Colorpicker({Default = Color3.fromRGB(255, 0, 0), alpha = 0.65, Flag = "Field Of View Color", Callback = function() utility.drawings["Aim Assist FOV"].Color = flags["Field Of View Color"].Color utility.drawings["Aim Assist FOV"].Transparency = 1 - flags["Field Of View Color"].Transparency end}); aimAssistFov:Slider({Name = "Radius", Flag = 'Aim Assist Field Of View Radius', Min = 0.1, Max = 500, Default = 50, Decimals = 0.1, Callback = function(Int) utility.drawings["Aim Assist FOV"].Radius = Int end}) aimAssistFov:Toggle({Name = "Enabled", Flag = "Aim Assist Field Of View Filled", Callback = function(Bool) utility.drawings["Aim Assist FOV"].Filled = Bool end}) aimAssistFov:Slider({Name = "Thickness", Flag = 'Aim Assist Field Of View Thickness', Min = 0.1, Max = 3, Default = 1, Decimals = 0.01, Callback = function(Int) utility.drawings["Aim Assist FOV"].Thickness = Int end}) end -- local aimAssistChecks = legit:Section({Name = "Checks", Size = 330}) do aimAssistChecks:Dropdown({Name = "Checks", Flag = "Aim Assist Checks", Options = {"Knocked Check", "Wall Check", "Friend Check", "Grabbed Check"}, Max = 9e9}) end end -- // Esp local esp = Window:Page({Name = "Visuals", Weapons = true}) do local ESP = esp:Weapon({Icon = "rbxassetid://6034281935"}) local World = esp:Weapon({Icon = "rbxassetid://16997762295"}) -- local playerEsp = ESP:Section({Name = "Player Esp", Size = 330, Side = "Left"}) do playerEsp:Toggle({Name = "Enabled", Flag = "PlayerESP_Enabled", Callback = function(Bool) if Bool then for i,v in next, Players:GetPlayers() do if v ~= LocalPlayer and not Visuals.Bases[v] then Visuals:Create({Player = v}) end end else Visuals:Unload() end end}) playerEsp:Slider({Name = "Distance", Flag = 'ESP Distance', Min = 0, Max = 5000, Default = 5000, Decimals = 5}) local box = playerEsp:Toggle({Name = "Boxes", Flag = "PlayerESP_Box"}) box:Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "PlayerESP_Box_Color1"}); box:Colorpicker({Default = Color3.fromRGB(0, 0, 0), Flag = "PlayerESP_Box_Color2"}); playerEsp:Toggle({Name = "Box-Fill", Flag = "PlayerESP_BoxFill"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Transparency = 0.7, Flag = "PlayerESP_BoxFill_Color"}); playerEsp:Dropdown({Name = "Box Type", Flag = "PlayerESP_Box_Type", Options = {"Bounding", "Corner"}, Default = "Bounding"}) playerEsp:Toggle({Name = "Name", Flag = "PlayerESP_Name"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "PlayerESP_Name_Color"}); playerEsp:Toggle({Name = "Weapons", Flag = "PlayerESP_Weapon"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "PlayerESP_Weapon_Color"}); playerEsp:Toggle({Name = "Flags", Flag = "PlayerESP_Flags"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "PlayerESP_FlagsColor"}); playerEsp:Dropdown({Name = "Flags", Flag = "PlayerESP_Flag_Options", Options = {"Distance", "Knocked"}, Max = 9e9}) playerEsp:Toggle({Name = "Gun Icons", Flag = "PlayerESP_GunIcons"}) local highlight = playerEsp:Toggle({Name = "Chams", Flag = "PlayerESP_Highlights"}) highlight:Colorpicker({Default = Color3.fromHex("#7D0DC3"), Transparency = 0.7, Flag = "PlayerESP_HighlightFillSettings"}); highlight:Colorpicker({Default = Color3.new(0,0,0), Flag = "PlayerESP_HighlightOutlineSettings"}); end -- local Properties = ESP:Section({Name = "Properties", Size = 330, Side = "Left"}) local health = Properties:Toggle({Name = "Health Bar", Flag = "PlayerESP_HealthBar"}) health:Colorpicker({Default = Color3.fromRGB(0,255,0), Flag = "PlayerESP_HealthBar_Color_Higher"}); health:Colorpicker({Default = Color3.fromRGB(255,0,0), Flag = "PlayerESP_HealthBar_Color_Low"}); Properties:Toggle({Name = "Health Number", Flag = "PlayerESP_HealthNumber"}) Properties:Toggle({Name = "Armor Bar", Flag = "PlayerESP_ArmorBar"}):Colorpicker({Default = Color3.fromRGB(0,0,255), Flag = "PlayerESP_ArmorBarColor"}); -- local selfEsp = ESP:Section({Name = "Self Esp", Size = 330, Side = "Right"}) do selfEsp:Toggle({Name = "Enabled", Flag = "Self_PlayerESP_Enabled", Callback = function(Bool) if Bool then Visuals:Create({Player = LocalPlayer}) else Visuals.Bases[LocalPlayer]:Remove() end end}) selfEsp:Slider({Name = "Distance", Flag = 'Self_ESP Distance', Min = 0, Max = 5000, Default = 5000, Decimals = 5}) local box = selfEsp:Toggle({Name = "Boxes", Flag = "Self_PlayerESP_Box"}) selfEsp:Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "Self_PlayerESP_Box_Color1"}); selfEsp:Colorpicker({Default = Color3.fromRGB(0, 0, 0), Flag = "Self_PlayerESP_Box_Color2"}); selfEsp:Toggle({Name = "Box-Fill", Flag = "Self_PlayerESP_BoxFill"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Transparency = 0.7, Flag = "Self_PlayerESP_BoxFill_Color"}); selfEsp:Toggle({Name = "Name", Flag = "Self_PlayerESP_Name"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "Self_PlayerESP_Name_Color"}); selfEsp:Toggle({Name = "Weapons", Flag = "Self_PlayerESP_Weapon"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "Self_PlayerESP_Weapon_Color"}); selfEsp:Toggle({Name = "Flags", Flag = "Self_PlayerESP_Flags"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "Self_PlayerESP_FlagsColor"}); selfEsp:Dropdown({Name = "Flags", Flag = "Self_PlayerESP_Flag_Options", Options = {"Distance", "Knocked"}, Max = 9e9}) selfEsp:Toggle({Name = "Gun Icons", Flag = "Self_PlayerESP_GunIcons"}) local highlight = selfEsp:Toggle({Name = "Chams", Flag = "Self_PlayerESP_Highlights"}) highlight:Colorpicker({Default = Color3.fromHex("#7D0DC3"), Transparency = 0.7, Flag = "Self_PlayerESP_HighlightFillSettings"}); highlight:Colorpicker({Default = Color3.new(0,0,0), Flag = "Self_PlayerESP_HighlightOutlineSettings"}); end -- local selfEspProperties = ESP:Section({Name = "Properties", Size = 330, Side = "Right"}) do local health = selfEspProperties:Toggle({Name = "Health Bar", Flag = "Self_PlayerESP_HealthBar"}) health:Colorpicker({Default = Color3.fromRGB(0,255,0), Flag = "Self_PlayerESP_HealthBar_Color_Higher"}); health:Colorpicker({Default = Color3.fromRGB(255,0,0), Flag = "Self_PlayerESP_HealthBar_Color_Low"}); selfEspProperties:Toggle({Name = "Health Number", Flag = "Self_PlayerESP_HealthNumber"}) selfEspProperties:Toggle({Name = "Armor Bar", Flag = "Self_PlayerESP_ArmorBar"}):Colorpicker({Default = Color3.fromRGB(0,0,255), Flag = "Self_PlayerESP_ArmorBarColor"}); end -- seperate here local worldVisuals = World:Section({Name = "Lighting", Size = 330, Side = "Left"}) do worldVisuals:Toggle({Name = "Master Switch", Flag = "Master Switch", Callback = function() for i,v in pairs(Lighting_Save) do Lighting[i] = v end end}) worldVisuals:Toggle({Name = "Clock Time", Flag = "Clock Time Enabled"}) worldVisuals:Slider({Name = "Clock Time", Flag = 'Clock Time', Min = 0, Max = 24, Default = 12, Decimals = 0.1}) worldVisuals:Toggle({Name = "Color Shift Bottom", Flag = "Color Shift Bottom"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "Color Shift Bottom Color"}); worldVisuals:Toggle({Name = "Ambient", Flag = "Ambient"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "Ambience Color"}); worldVisuals:Toggle({Name = "Outdoor Ambience", Flag = "Outdoor Ambience"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "Outdoor Ambience color"}); worldVisuals:Toggle({Name = "Brightness", Flag = "Brightness Enabled"}) worldVisuals:Slider({Name = "Brightness", Flag = 'Brightness', Min = 0, Max = 20, Default = 3, Decimals = 1}) worldVisuals:Toggle({Name = "Color Shift Top", Flag = "Color Shift Top"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "Color Shift Top Color"}); worldVisuals:Toggle({Name = "Fog", Flag = "Fog"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Flag = "Fog Color"}); end -- local bulletTracers = World:Section({Name = "Bullet Modification", Size = 330, Side = "Left"}) do bulletTracers:Toggle({Name = "Bullet Tracers", Flag = "Bullet Tracers"}):Colorpicker({Default = Color3.new(1,1,1), Flag = "Bullet Tracers Color"}); bulletTracers:Slider({Name = "Lifetime", Flag = 'Tracers Life Time', Min = 0, Max = 10, Default = 2, Decimals = 0.1}) bulletTracers:Toggle({Name = "Face Camera", Flag = "Face Camera", Default = true}) bulletTracers:Slider({Name = "Brightness", Flag = 'Bullet Brightness', Min = 0, Max = 20, Default = 6, Decimals = 1}) bulletTracers:Slider({Name = "Speed", Flag = 'Bullet Speed', Min = 0, Max = 20, Default = 3, Decimals = 0.01}) bulletTracers:Slider({Name = "Size", Flag = 'Bullet Size', Min = 1, Max = 20, Default = 1, Decimals = 0.01}) bulletTracers:Toggle({Name = "Bullet Impacts", Flag = "Bullet Impacts"}):Colorpicker({Default = Color3.new(1,1,1), Alpha = 0, Flag = "Bullet Impacts Color"}); bulletTracers:Slider({Name = "Size", Flag = 'Impact Size', Min = 0.01, Max = 5, Default = 0.25, Decimals = 0.01}) end -- local crosshairSection = World:Section({Name = "Crosshair", Size = 330, Side = "Right"}) do crosshairSection:Toggle({Name = "Crosshair", Flag = "Crosshair", Callback = function() for i = 1, #crosshair_Lines do crosshair_Lines[i].Visible = false; end -- for i = 1, #crosshair_Outlines do crosshair_Outlines[i].Visible = false; end end}):Colorpicker({Default = Color3.fromRGB(255,255,255), Flag = "Crosshair Color", Callback = function() for i = 1, #crosshair_Lines do crosshair_Lines[i].Color = flags["Crosshair Color"].Color; crosshair_Lines[i].Transparency = flags["Crosshair Color"].Transparency; end end}); crosshairSection:Toggle({Name = "Always Rotating", Flag = "Crosshair Always Rotating"}) crosshairSection:Slider({Name = "Speed", Flag = 'Crosshair Speed', Min = 0, Max = 24, Default = 12, Decimals = 0.1}) crosshairSection:Slider({Name = "Gap Size", Flag = 'Crosshair Gap Size', Min = 0, Max = 30, Default = 12, Decimals = 1}) crosshairSection:Slider({Name = "Length", Flag = 'Crosshair Length', Min = 0, Max = 30, Default = 12, Decimals = 1}) crosshairSection:Slider({Name = "Thickness", Flag = 'Crosshair Thickness', Min = 0.1, Max = 5, Default = 1.5, Decimals = 0.1, Callback = function(Int) for i = 1, #crosshair_Lines do crosshair_Lines[i].Thickness = Int; crosshair_Outlines[i].Thickness = Int; end end}) crosshairSection:Slider({Name = "Sides", Flag = 'Crosshair Sides', Min = 1, Max = 10, Default = 4, Decimals = 1, callback = function(Int) crosshair_LineAmount = Int -- crosshair_lineOffsets = utility:generateAngles(Int) -- for i = 1, #crosshair_Lines do crosshair_Lines[i]:Remove(); crosshair_Lines[i] = nil; end -- for i = 1, #crosshair_Outlines do crosshair_Outlines[i]:Remove(); crosshair_Outlines[i] = nil; end -- do for Index = 1, Int do local line = utility:drawObject("Line",{ Visible = false, Color = flags["Crosshair Color"].Color, Thickness = flags["Crosshair Thickness"], ZIndex = 2, Transparency = 1 }) -- crosshair_Lines[Index] = line -- local line_1 = utility:drawObject("Line",{ Visible = false, Color = Color3.fromRGB(0, 0, 0), Thickness = flags["Crosshair Thickness"] * 2.5, ZIndex = 1, Transparency = 1 }) -- crosshair_Outlines[Index] = line_1 end end end}) crosshairSection:Dropdown({Name = "Sizing Easing Style", Flag = "Crosshair Sizing Easing Style", Options = {"Off", "Linear", "Cubic", "Quad", "Quart", "Quint", "Sine", "Exponential", "Back", "Bounce", "Elastic", "Circular"}, Default = "Off"}) crosshairSection:Dropdown({Name = "Speed Easing Style", Flag = "Crosshair Speed Easing Style", Options = {"Off", "Linear", "Cubic", "Quad", "Quart", "Quint", "Sine", "Exponential", "Back", "Bounce", "Elastic", "Circular"}, Default = "Off"}) crosshairSection:Toggle({Name = "Show Text", Flag = "Script Name", Callback = function(Bool) local sub = utility.drawings["Sub"] local domain = utility.drawings["Domain"] -- sub.Visible = Bool domain.Visible = Bool end}) crosshairSection:Toggle({Name = "Pulse", Flag = "Pulse"}) crosshairSection:Toggle({Name = "Attach to target", Flag = "Attach to target"}) end -- local ingameCrosshair = World:Section({Name = "In-Game Crosshair", Size = 330, Side = "Right"}) do ingameCrosshair:Toggle({Name = "Spinning", Flag = "In-Game Crosshair Spin", Callback = function() game:GetService("Players").LocalPlayer.PlayerGui.MainScreenGui.Aim.Rotation = 0 end}) ingameCrosshair:Slider({Name = "Speed", Flag = 'In-Game Crosshair Spin Speed', Min = 0, Max = 30, Default = 1, Decimals = 1}) ingameCrosshair:Toggle({Name = "Dont Show", Flag = "In-Game Crosshair Invisible"}) end end -- // Visuals local misc = Window:Page({Name = "Misc", Weapons = true}) do local Movement = misc:Weapon({Icon = "rbxassetid://6034509993"}) local Exploits = misc:Weapon({Icon = "rbxassetid://16997954488"}) local movementSection = Movement:Section({Name = "General", Size = 330}) do movementSection:Toggle({Name = "Speed", Flag = "Speed Enabled"}):Keybind({Name = "Speed", Flag = "Speed Key", Mode = "Toggle", Callback = function() if Chatting then return end end}) movementSection:Slider({Name = "Speed", Flag = 'Speed', Min = 0, Max = 100, Default = 20, Decimals = 1}) movementSection:Toggle({Name = "Fly", Flag = "Fly Enabled"}):Keybind({Name = "Fly", Flag = "Fly Key", Mode = "Toggle", Callback = function() if Chatting then return end LocalPlayer.Character.HumanoidRootPart.Anchored = false; end}) movementSection:Slider({Name = "Fly", Flag = 'Fly Speed', Min = 0, Max = 100, Default = 20, Decimals = 1}) end -- local hitEffects = Movement:Section({Name = "Hit Effects", Size = 330, Side = "Right"}) do hitEffects:Toggle({Name = "Hit Marker", Flag = "Hit Marker"}):Colorpicker({Default = Color3.fromRGB(255,255,255), Flag = "Hit Marker Settings"}); hitEffects:Toggle({Name = "3D Hit Marker", Flag = "3D Hit Marker"}):Colorpicker({Default = Color3.fromRGB(255,255,255), Flag = "3D Hit Marker Settings"}); hitEffects:Slider({Name = "Fading Time", Flag = 'Hit Markers Time', Min = 0.1, Max = 10.0, Default = 5.0, Decimals = 0.1}) hitEffects:Toggle({Name = "Hit Sounds", Flag = "Hit Sounds"}) hitEffects:Dropdown({Name = "Hit Sounds", Flag = "Hit Sounds Sound", Options = sfx_names, Default = "Neverlose"}) hitEffects:Slider({Name = "Volume", Flag = 'Hit Sounds Volume', Min = 0.1, Max = 10.0, Default = 5.0, Decimals = 0.1}) hitEffects:Slider({Name = "Pitch", Flag = 'Hit Sounds Pitch', Min = 0.1, Max = 10.0, Default = 1.0, Decimals = 0.1}) hitEffects:Toggle({Name = "Hit Effects", Flag = "Hit Effects"}):Colorpicker({Default = Color3.fromRGB(255,255,255), Flag = "Hit Effect Settings"}); hitEffects:Dropdown({Name = "Hit Effects", Flag = "Hit Effects Option", Options = {"Confetti", "Nova", "Sparkle"}, Default = "Confetti"}) hitEffects:Toggle({Name = "Hit Chams", Flag = "Hit Chams"}):Colorpicker({Default = Color3.fromRGB(255, 0, 0), Transparency = 0.8, Flag = "Hit Chams Settings"}); hitEffects:Dropdown({Name = "Material", Flag = "Hit Chams Material", Options = {"ForceField", "Neon", "Plastic"}, Default = "Neon"}) hitEffects:Slider({Name = "Fading Time", Flag = 'Hit Chams Fading Time', Min = 0.1, Max = 10.0, Default = 5.0, Decimals = 0.1}) hitEffects:Toggle({Name = "Hit-Logs", Flag = "Hit Notify"}) end -- local chatSpam = Movement:Section({Name = "Chat Spam", Size = 330, Side = "Left"}) do chatSpam:Toggle({Name = "Enabled", Flag = "Chat Spam"}) chatSpam:Dropdown({Name = "Type", Flag = "Chat Spam Type", Options = {"Lunar", "Scottish"}, Default = "Lunar"}) chatSpam:Slider({Name = "Delay", Flag = 'Chat Spam Delay', Suffix = "s", Min = 0.1, Max = 10.0, Default = 5.0, Decimals = 0.1}) chatSpam:Toggle({Name = "Emojis", Flag = "Emojis"}) chatSpam:Toggle({Name = "Symbols", Flag = "Symbol"}) chatSpam:Toggle({Name = "Repeat", Flag = "Repeat"}) end -- local characterMods = Movement:Section({Name = "Character", Size = 330, Side = "Left"}) do characterMods:Toggle({Name = "Remove Chairs", Flag = "Remove Chairs", Callback = function(Bool) for i,v in pairs(Workspace:GetDescendants()) do if v:IsA("Seat") then v.Disabled = Bool end end end}) characterMods:Toggle({Name = "No Slow", Flag = "No Slow"}) characterMods:Toggle({Name = "Auto Reload", Flag = "Auto Reload"}) characterMods:Toggle({Name = "Auto Armor", Flag = "Auto Armor"}) characterMods:Toggle({Name = "Anti Void Kill", Flag = "Anti Void Kill", Callback = function(Bool) Workspace.FallenPartsDestroyHeight = Bool and -50000 or -500 end}) end -- local cframeDesync = Exploits:Section({Name = "Desync", Size = 330, Side = "Left"}) do local customSliders, strafeSliders, randomSliders = {}, {}, {} cframeDesync:Toggle({Name = "Enabled", Flag = "Desync"}):Keybind({Name = "Desync Key", Flag = "Desync Key", Mode = "Toggle", Callback = function() if flags["Desync Key"] == false and C_Desync["OldPosition"] then LocalPlayer.Character.HumanoidRootPart.CFrame = C_Desync["OldPosition"] C_Desync["OldPosition"] = nil end end}) local Vis = cframeDesync:Toggle({Name = "Visualize", Flag = "Desync Visualize"}); Vis:Colorpicker({Default = Color3.fromRGB(0,0,0), Flag = "Desync Visualize Outline", Alpha = 0}); Vis:Colorpicker({Default = Color3.fromHex("#7D0DC3"), Flag = "Desync Visualize Fill", Alpha = 0.7}); cframeDesync:Toggle({Name = "Attach onto target", Flag = "Attach Target"}); cframeDesync:Dropdown({Name = "Type", Flag = "Desync Type", Options = {"Custom", "Random", "Target Strafe", "Roll"}, Default = "Target Strafe", Callback = function(Option) if #customSliders ~= 0 then for _,v in pairs(customSliders) do v:SetVisible(Option == "Custom" and true or false) end; for _,v in pairs(strafeSliders) do v:SetVisible(Option == "Target Strafe" and true or false) end; for _,v in pairs(randomSliders) do v:SetVisible(Option == "Random" and true or false) end end end}) -- // Dropdown Sliders do local _ = cframeDesync:Slider({Name = "Position X", Flag = 'Desync X', Min = -15, Max = 15, Default = 0, Decimals = 1, Suffix = "m"}) table.insert(customSliders, _) local _ = cframeDesync:Slider({Name = "Position Y", Flag = 'Desync Y', Min = -15, Max = 15, Default = 0, Decimals = 1, Suffix = "m"}) table.insert(customSliders, _) local _ = cframeDesync:Slider({Name = "Position Z", Flag = 'Desync Z', Min = -15, Max = 15, Default = 0, Decimals = 1, Suffix = "m"}) table.insert(customSliders, _) -- local _ = cframeDesync:Slider({Name = "Rotation X", Flag = 'Rotation X', Min = -180, Max = 180, Default = 0, Decimals = 1, Suffix = "°"}) table.insert(customSliders, _) local _ = cframeDesync:Slider({Name = "Rotation Y", Flag = 'Rotation Y', Min = -180, Max = 180, Default = 0, Decimals = 1, Suffix = "°"}) table.insert(customSliders, _) local _ = cframeDesync:Slider({Name = "Rotation Z", Flag = 'Rotation Z', Min = -180, Max = 180, Default = 0, Decimals = 1, Suffix = "°"}) table.insert(customSliders, _) -- local _ = cframeDesync:Slider({Name = "Radius", Flag = 'Desync Strafe Radius', Min = -15, Max = 15, Default = 10, Decimals = 1, Suffix = "m"}) table.insert(strafeSliders, _) local _ = cframeDesync:Slider({Name = "Speed", Flag = 'Desync Strafe Speed', Min = -15, Max = 15, Default = 10, Decimals = 1, Suffix = "m/s"}) table.insert(strafeSliders, _) local _ = cframeDesync:Slider({Name = "Height", Flag = 'Desync Strafe Height', Min = -15, Max = 15, Default = 0, Decimals = 1, Suffix = "m"}) table.insert(strafeSliders, _) -- local _ = cframeDesync:Slider({Name = "Random Range", Flag = 'Desync Random Range', Min = 0, Max = 50, Default = 0, Decimals = 1, Suffix = "st"}) table.insert(randomSliders, _) -- for _,v in pairs(customSliders) do v:SetVisible(false) end for _,v in pairs(strafeSliders) do v:SetVisible(true) end for _,v in pairs(randomSliders) do v:SetVisible(false) end end end -- local invisDesync = Exploits:Section({Name = "Exploits", Size = 330, Side = "Right"}) do local loop; invisDesync:Toggle({Name = "Invis Desync", Flag = "Invis Desync"}):Keybind({Name = "Invisible Desync", Flag = "Invis Desync Key", Mode = "Toggle", Callback = function() if flags["Invis Desync"] and flags["Invis Desync Key"] then if flags["Invis Desync Key"] then setfflag("S2PhysicsSenderRate", 2) loop = RunService.Heartbeat.Connect(RunService.Heartbeat, framework.desyncInit); end else -- skibidi sigma rizz if loop then loop:Disconnect() loop = nil setfflag("S2PhysicsSenderRate", 15) end end end}) -- invisDesync:Toggle({Name = "Destroy Cheaters", Flag = "Destroy Cheaters"}):Keybind({Name = "Destroy Cheaters", Flag = "Destroy Cheaters Key", Mode = "Toggle"}) flags["Destroy Cheaters Key"] = true end -- local fastFlags = Exploits:Section({Name = "Fast Flags", Size = 330, Side = "Right"}) do fastFlags:Toggle({Name = "Enabled", Flag = "Fast Flags", Callback = function() setfflag("S2PhysicsSenderRate", 15) end}) fastFlags:Slider({Name = "Amount", Flag = 'Fast Flags Amount', Min = 1, Max = 15, Default = 2, Decimals = 0.01}) -- fastFlags:Toggle({Name = "Network Desync", Flag = "Network Desync", Callback = function() sethiddenproperty(LocalPlayer.Character.HumanoidRootPart, "NetworkIsSleeping", false) end}) fastFlags:Slider({Name = "Delay", Flag = 'Network Delay', Suffix = "s", Min = 0.01, Max = 15, Default = 2, Decimals = 0.01}) end end -- // Settings local Config = Window:Page({Name = "Settings"}) do local Menu = Config:Section({Name = "Menu", Size = 120}) local Cfgs = Config:Section({Name = "Configs", Size = 200, Side = "Right"}) -- local abc = false Menu:Keybind({Name = "Menu key", Flag = "MenuKey", Default = Enum.KeyCode.End, Mode = "Toggle", Callback = function() abc = not abc Library:SetOpen(abc) end}) Menu:Dropdown({Name = "Notification Position", Flag = "Notification Position", Options = {"Top Left", "Middle"}, Default = "Top Left"}) Menu:Label({Centered = true, Name = "Credits: \nPortal : User Interface"}) -- local CFGList = Cfgs:Dropdown({Name = "Cfg List", Flag = "SettingConfigurationList", Options = {}}) Cfgs:Textbox({Flag = "SettingsConfigurationName", Placeholder = "Config name"}) -- local CurrentList = {}; if not isfolder("Lunar") then makefolder("Lunar") end if not isfolder("Lunar/Configs") then makefolder("Lunar/Configs") end local function UpdateConfigList() local List = {}; for idx, file in ipairs(listfiles("Lunar/Configs")) do local FileName = file:gsub("Lunar/Configs\\", ""):gsub(".cfg", "") List[#List + 1] = FileName; end; local IsNew = #List ~= #CurrentList if not IsNew then for idx, file in ipairs(List) do if file ~= CurrentList[idx] then IsNew = true; break; end; end; end; if IsNew then CurrentList = List; CFGList:Refresh(CurrentList); end; end; -- Cfgs:Button({Name = "Create", Callback = function() local ConfigName = flags.SettingsConfigurationName; if ConfigName == "" or isfile("Lunar/Configs/" .. ConfigName .. ".cfg") then return; end; writefile("Lunar/Configs/" .. ConfigName .. ".cfg", Library:GetConfig()); UpdateConfigList(); end}) Cfgs:Button({Name = "Save", Callback = function() local SelectedConfig = flags.SettingConfigurationList; if SelectedConfig then writefile("Lunar/Configs/" .. SelectedConfig .. ".cfg", Library:GetConfig()) end; end}) Cfgs:Button({Name = "Load", Callback = function() local SelectedConfig = flags.SettingConfigurationList; if SelectedConfig then Library:LoadConfig(readfile("Lunar/Configs/" .. SelectedConfig .. ".cfg")) end end}) Cfgs:Button({Name = "Delete", Callback = function() local SelectedConfig = flags.SettingConfigurationList; if SelectedConfig then delfile("Lunar/Configs/" .. SelectedConfig .. ".cfg") end UpdateConfigList(); end}) Cfgs:Button({Name = "Refresh", Callback = function() UpdateConfigList(); end}) Cfgs:Toggle({Name = "Keybind List", Flag = "Keybind List", Callback = function(Bool) PlaceHolderUI.Enabled = Bool end}) UpdateConfigList(); end end -- // Framework do getgenv().offset = nil; local Origin; local Position, OnScreen, PreviousGun, PreviousAmmo, Sine, Radians = nil, nil, nil, nil, 0, 1; local NetworkTick, Networking = 0, false; local chatTick = 0; -- // Loops do framework["connections"]["Main Loop"] = RunService.Heartbeat:Connect(LPH_NO_VIRTUALIZE(function(Fps) -- // Framework Calls do framework:aimAssist() framework:worldVisuals() end --// Auto Armor do if flags["Auto Armor"] then if LocalPlayer.Character.BodyEffects.Armor.Value < 100 then local Pos = LocalPlayer.Character.HumanoidRootPart.CFrame LocalPlayer.Character.HumanoidRootPart.CFrame = workspace.Ignored.Shop["[High-Medium Armor] - $2440"].Head.CFrame fireclickdetector(workspace.Ignored.Shop["[High-Medium Armor] - $2440"].ClickDetector) RunService.RenderStepped:Wait() LocalPlayer.Character.HumanoidRootPart.CFrame = Pos end end end -- // No Slow Down do if flags["No Slow"] then if LocalPlayer.Character.BodyEffects.Reload.Value then LocalPlayer.Character.BodyEffects.Reload.Value = false end -- local Slowdowns = LocalPlayer.Character.BodyEffects.Movement:FindFirstChild('NoJumping') or LocalPlayer.Character.BodyEffects.Movement:FindFirstChild('NoWalkSpeed') or LocalPlayer.Character.BodyEffects.Movement:FindFirstChild('ReduceWalk') if Slowdowns then Slowdowns:Destroy() end end end -- // Target Framework do if utility.target and utility:ValidateClient(utility.target) and flags["Silent_Bind"] then Position, OnScreen = Camera:WorldToViewportPoint(utility.target.Character.HumanoidRootPart.Position); prediction = framework:selectPrediction() -- if flags["Target Auto Select"] then framework:autoSelect() end -- if flags["Resolver"] then offset = framework:calculateResolverOffset(utility.target); end -- if flags["Highlight Enabled"] then targetHighlight.Enabled = true targetHighlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop targetHighlight.FillColor = flags["Highlight Fill Color"].Color targetHighlight.OutlineColor = flags["Highlight Outline Color"].Color targetHighlight.Adornee = utility.target.Character targetHighlight.OutlineTransparency = flags["Highlight Outline Color"].Transparency targetHighlight.FillTransparency = flags["Highlight Fill Color"].Transparency else targetHighlight.Enabled = false end -- if flags["Nearest Part"] then partClosest = framework:calculateNearestPart(utility.target, flags["Closest Hit Part"]).Name end -- checks = framework:getChecks(utility.target, table.find(flags["Silent Checks"], "Friend Check"), table.find(flags["Silent Checks"], "Wall Check"), table.find(flags["Silent Checks"], "Knocked Check"), table.find(flags["Silent Checks"], "Grabbed Check")); -- if flags["Line Enabled"] then utility.drawings["Tracer"].Visible = OnScreen and true or false utility.drawings["Tracer"].From = NewVector2(Mouse.X, Mouse.Y + Offset) utility.drawings["Tracer"].To = NewVector2(Position.X, Position.Y) utility.drawings["Tracer"].Color = flags["Line Settings"].Color utility.drawings["Tracer"].Transparency = flags["Line Settings"].Transparency end -- if flags["Target Strafe Enabled"] then utility.angle = utility.angle + flags["Target Strafe Speed"] local strafe = utility.target.Character.HumanoidRootPart.CFrame * CFrame.Angles(0, math.rad(utility.angle), 0) * NewCFrame(0, flags["Target Strafe Height"], flags["Target Strafe Distance"]) -- LocalPlayer.Character.HumanoidRootPart.CFrame = strafe end -- if flags["Back Track Enabled"] and flags["Back Track Method"] == "Follow" then for _, Part in pairs(utility.folders["Part Chams"]:GetChildren()) do if Part:IsA("BasePart") and table.find(utility.bodyParts, Part.Name) then Part.Position = utility.target.Character[Part.Name].Position + utility.target.Character.HumanoidRootPart.Velocity * 0.1413 Part.Rotation = utility.target.Character[Part.Name].Rotation end end end -- if flags["Look At"] then LocalPlayer.Character.Humanoid.AutoRotate = false; local OldCframe = LocalPlayer.Character.PrimaryPart; local NearestRoot = utility.target.Character.HumanoidRootPart local NearestPos = NewCFrame(LocalPlayer.Character.PrimaryPart.Position, Vector3.new(NearestRoot.Position.X, OldCframe.Position.Y, NearestRoot.Position.Z)); LocalPlayer.Character:SetPrimaryPartCFrame(NearestPos); end -- if flags["Auto Shoot"] then local Tool = utility:getHeld(); if Tool then Tool:Activate() end end else -- if (utility.drawings["Tracer"].Visible == true) then utility.drawings["Tracer"].Visible = false end -- targetHighlight.Enabled = false end end -- // Anti Cheat Bypass do if tick() - antiCheattick > 1 and LocalPlayer.Character then antiCheattick = tick() -- for _, Script in pairs(LocalPlayer.Character:GetChildren()) do if Script:IsA("Script") and Script.Name ~= "Health" and Script.Name ~= "Sound" and Script:FindFirstChild("LocalScript") then Script:Destroy() end end end end -- // Movement do if LocalPlayer.Character and not (flags["Desync"] and flags["Desync Key"]) then framework:cframeSpeed() framework:fly(Fps) end end -- // Physics and Network shits do if flags["Fast Flags"] and getfflag("S2PhysicsSenderRate") ~= flags["Fast Flags Amount"] then setfflag("S2PhysicsSenderRate", flags["Fast Flags Amount"]) end -- if flags["Network Desync"] then if tick() - NetworkTick > flags["Network Delay"] then NetworkTick = tick() Networking = not Networking sethiddenproperty(LocalPlayer.Character.HumanoidRootPart, "NetworkIsSleeping", Networking) end end end -- // Chat Spam do if flags["Chat Spam"] then if tick() - chatTick > flags["Chat Spam Delay"] then chatTick = tick() local Message = framework:chatSpam(flags["Chat Spam Type"], flags["Repeat"], flags["Emojis"], flags["Symbol"]) ReplicatedStorage.DefaultChatSystemChatEvents.SayMessageRequest:FireServer(Message, "All") end end end end)) framework["connections"]["Desync"] = RunService.Heartbeat:Connect(LPH_NO_VIRTUALIZE(function(delta) -- // Desync do if ((flags["Desync"] and flags["Desync Key"]) or (flags["Destroy Cheaters"] and flags["Destroy Cheaters Key"]) and LocalPlayer.Character) then C_Desync["OldPosition"] = LocalPlayer.Character.HumanoidRootPart.CFrame local Origin = (flags["Attach Target"] and checks and utility.target and utility.target.Character and utility.target.Character.HumanoidRootPart) or LocalPlayer.Character.HumanoidRootPart local randomRange = flags["Desync Random Range"] Radians += flags["Desync Strafe Speed"] local calculatedPositions = { ["Random"] = (NewCFrame(Origin.Position) + Vector3.new(Random(-randomRange, randomRange), Random(-randomRange, randomRange), Random(-randomRange, randomRange))) * CFrame.Angles(Rad(Random(-180, 180)), Rad(Random(-180, 180)), Rad(Random(-180, 180))), ["Roll"] = Origin.CFrame * NewCFrame(0, -4 ,0) * CFrame.Angles(0, Rad(Random(1, 360)), Rad(-180)), ["Target Strafe"] = Origin.CFrame * CFrame.Angles(0, Rad(Radians), 0) * NewCFrame(0, flags["Desync Strafe Height"], flags["Desync Strafe Radius"]), ["Custom"] = Origin.CFrame * NewCFrame(flags["Desync X"], flags["Desync Y"], flags["Desync Z"]) * CFrame.Angles(Rad(flags["Rotation X"]), Rad(flags["Rotation Y"]), Rad(flags["Rotation Z"])), ["Destroy Cheaters"] = Origin.CFrame * NewCFrame(9e9, 0/0, math.huge) } -- C_Desync["PredictedPosition"] = flags["Destroy Cheaters"] and flags["Destroy Cheaters Key"] and calculatedPositions["Destroy Cheaters"] or calculatedPositions[flags["Desync Type"]] -- LocalPlayer.Character.HumanoidRootPart.CFrame = C_Desync["PredictedPosition"] -- if flags["Desync Visualize"] then bodyClone:SetPrimaryPartCFrame(LocalPlayer.Character.HumanoidRootPart.CFrame) visualizeChams.FillColor = flags["Desync Visualize Fill"].Color; visualizeChams.FillTransparency = flags["Desync Visualize Fill"].Transparency; visualizeChams.OutlineColor = flags["Desync Visualize Outline"].Color; visualizeChams.OutlineTransparency = flags["Desync Visualize Outline"].Transparency; end -- game:GetService("RunService").RenderStepped:Wait() -- LocalPlayer.Character.HumanoidRootPart.CFrame = C_Desync["OldPosition"] -- framework:cframeSpeed() framework:fly(delta) else bodyClone:SetPrimaryPartCFrame(NewCFrame(9999,9999,9999)) end end end)) framework["connections"]["ESP Loop"] = RunService.RenderStepped:Connect(LPH_NO_VIRTUALIZE(function(Fps) for Index, Base in pairs(Visuals.Bases) do Base:Update() end -- // Crosshair Visuals do crosshair_SpinAngle = flags["Crosshair Always Rotating"] and crosshair_SpinAngle + math.rad((flags["Crosshair Speed"] * 10) * Fps) or 0; -- // Crosshair do if flags["Crosshair"] then local Radius = flags["Crosshair Length"] * 5 local Gap = flags["Crosshair Gap Size"] -- if flags["Attach to target"] and utility.target ~= nil and utility.target.Character and OnScreen then Origin = NewVector2(Position.X, Position.Y) else Origin = NewVector2(Mouse.X, Mouse.Y + Offset) end -- CursorSize += 0.025 -- local SmoothAngle = flags["Crosshair Speed Easing Style"] ~= "Off" and Tween.EasingStyles[Enum.EasingStyle[flags["Crosshair Speed Easing Style"]]][Enum.EasingDirection.InOut](utility:Shift(crosshair_SpinAngle)) * (Pi * Pi/2) or crosshair_SpinAngle local Dynamic = Cos(CursorSize) local SmoothSize = flags["Crosshair Sizing Easing Style"] ~= "Off" and ((Radius / 2) * (Tween.EasingStyles[Enum.EasingStyle[flags["Crosshair Sizing Easing Style"]]][Enum.EasingDirection.In](utility:Shift(Dynamic)))) or 0 local localRadius = Radius - SmoothSize -- for i = 1, #crosshair_Lines do local Positions = NewVector2(Cos(SmoothAngle + crosshair_lineOffsets[i]), (Sin(SmoothAngle + crosshair_lineOffsets[i]))) -- crosshair_Lines[i].From = Origin + NewVector2(Positions.X, Positions.Y) * Gap crosshair_Lines[i].To = crosshair_Lines[i].From + NewVector2(Positions.X, Positions.Y) * localRadius -- crosshair_Outlines[i].From = Origin + NewVector2(Positions.X, Positions.Y) * (Gap - 1) crosshair_Outlines[i].To = crosshair_Lines[i].From + NewVector2(Positions.X, Positions.Y) * (localRadius + 1) -- crosshair_Lines[i].Visible = true crosshair_Outlines[i].Visible = true end end end -- // Crosshair Text do if flags["Script Name"] then local sub = utility.drawings["Sub"] local domain = utility.drawings["Domain"] -- local yOffset = flags["Crosshair"] and ((flags["Crosshair Length"] * 5) + flags["Crosshair Gap Size"]) or 30 -- local textOrigin; if flags["Attach to target"] and utility.target ~= nil and utility.target.Character and OnScreen then textOrigin = NewVector2(Position.X - 23, Position.Y + yOffset) else textOrigin = NewVector2(Mouse.X - 23, Mouse.Y + Offset + yOffset) end -- sub.Visible = true domain.Visible = true -- sub.Position = textOrigin domain.Position = sub.Position + NewVector2(sub.TextBounds.X, 0) end -- if flags["Pulse"] and flags["Script Name"] then local sub = utility.drawings["Sub"] -- Sine = flags["Pulse"] and math.abs(math.sin(tick() * 4)) or 1 sub.Transparency = Sine end end -- // In-Game Crosshair Shit do if flags["In-Game Crosshair Spin"] and not flags["In-Game Crosshair Invisible"] then LocalPlayer.PlayerGui.MainScreenGui.Aim.Rotation += flags["In-Game Crosshair Spin Speed"] end -- if flags["In-Game Crosshair Invisible"] and LocalPlayer.PlayerGui.MainScreenGui.Aim.Visible == true then Players.LocalPlayer.PlayerGui.MainScreenGui.Aim.Visible = false end end end -- // Hit Detection do local Gun = LocalPlayer.Character:FindFirstChildWhichIsA("Tool") local Connection = framework["connections"]["Hit Detection"] if Gun ~= PreviousGun and Connection then PreviousGun = Gun PreviousAmmo = 999 Connection:Disconnect() framework["connections"]["Hit Detection"] = nil end if not framework["connections"]["Hit Detection"] and Gun and Gun.Ammo.Value then framework["connections"]["Hit Detection"] = Gun.Ammo:GetPropertyChangedSignal("Value"):Connect(function() local CurrentAmmo = Gun.Ammo.Value if CurrentAmmo < PreviousAmmo then local ChildrenAdded = 0; local ChildAdded; local IgnoreList = {LocalPlayer.Character, Gun.Handle}; ChildAdded = Workspace.Ignored.Siren.Radius.ChildAdded:Connect(function(Object) if Object.Name == "BULLET_RAYS" then ChildrenAdded += 1; if (table.find({"[Double-Barrel SG]", "[TacticalShotgun]", "[Shotgun]"}, Gun.Name) and ChildrenAdded <= 5) or (ChildrenAdded == 1) then local Pos = Object.CFrame.Position local LookVector = Object.CFrame.LookVector -- local RayCastParams = RaycastParams.new() RayCastParams.FilterType = Enum.RaycastFilterType.Exclude RayCastParams.IgnoreWater = true RayCastParams.FilterDescendantsInstances = IgnoreList local Ray = Workspace:Raycast(Pos, LookVector * 1000, RayCastParams) if not Ray then return end local HitPosition = Ray.Position local HitInstance = Ray.Instance -- delay(0.001, function() if flags["Bullet Tracers"] then Object:Destroy() utility:CreateBeam(Pos, HitPosition, flags["Bullet Tracers Color"].Color, flags["Face Camera"], flags["Bullet Size"], flags["Bullet Speed"], flags["Bullet Brightness"]) end -- if flags["Bullet Impacts"] then local Impact = Instance.new("Part") Impact.Anchored = true Impact.CanCollide = false Impact.Parent = game.Workspace Impact.Material = "Neon" Impact.Shape = Enum.PartType.Block Impact.Transparency = flags["Bullet Impacts Color"].Transparency Impact.Color = flags["Bullet Impacts Color"].Color Impact.Size = NewVector3(flags["Impact Size"], flags["Impact Size"], flags["Impact Size"]) Impact.CFrame = NewCFrame(HitPosition) delay(3, function() Impact:Destroy() end) end -- if HitInstance then local InstanceHit = HitInstance:FindFirstAncestorOfClass('Model') if not InstanceHit then return end if InstanceHit:FindFirstChild("Humanoid") and InstanceHit:FindFirstChild("HumanoidRootPart") then if flags["Hit Sounds"] then HitReg:HitSound(sfx[flags["Hit Sounds Sound"]], flags["Hit Sounds Volume"], flags["Hit Sounds Pitch"]) end -- if flags["Hit Chams"] then local Model = Instance.new("Model", utility.folders["Hit Chams"]) utility:characterClone(Players[InstanceHit.Name], flags["Hit Chams Settings"].Color, flags["Hit Chams Material"], flags["Hit Chams Settings"].Transparency, Model); delay(flags["Hit Chams Fading Time"], function() Model:Destroy() end) end -- if flags["Hit Notify"] then local Text = string.format("You Hit %s in the %s!", Players[InstanceHit.Name].Name, HitInstance.Name) Library:Notification(Text, 3, Library.Accent, flags["Notification Position"]) end -- if flags["Hit Marker"] then HitReg:HitMarker(4, flags["Hit Marker Settings"].Color, flags["Hit Markers Time"]) end -- if flags["3D Hit Marker"] then HitReg:HitMarker3D(4, flags["3D Hit Marker Settings"].Color, flags["Hit Markers Time"], HitPosition) end -- if flags["Hit Effects"] then HitReg:HitEffect(flags["Hit Effects Option"], Players[InstanceHit.Name].Character) end end end ChildAdded:Disconnect() end) end else ChildAdded:Disconnect() end end) end PreviousAmmo = CurrentAmmo end) end end end)) framework["connections"]["Typing Check"] = InputService.InputBegan:Connect(function(_, Chatting) Typing = Chatting end) framework["connections"]["Text"] = InputService.InputChanged:Connect(function(_) if utility.drawings["Aim Assist FOV"].Visible then utility.drawings["Aim Assist FOV"].Position = NewVector2(Mouse.X, Mouse.Y + Offset) end end) framework["connections"]["ESP Player Find Loop"] = Players.PlayerAdded:Connect(LPH_NO_VIRTUALIZE(function(Player) if flags["PlayerESP_Enabled"] then Visuals:Create({Player = Player}) end end)) end -- // Gun Handling do local function Aimbot() utility:calculateAimViewerEndPoint() end -- local function Ammo() framework:autoReload() end -- framework["connections"]["Anti Aim Viewer"] = {} framework["connections"]["auto reload >_< :3"] = {} for i, v in pairs(LocalPlayer.Backpack:GetChildren()) do if v:IsA("Tool") and v:FindFirstChild("Ammo") then if not framework["connections"]["Anti Aim Viewer"][v] then framework["connections"]["Anti Aim Viewer"][v] = v.Activated:Connect(Aimbot) end -- if not framework["connections"]["auto reload >_< :3"][v] then framework["connections"]["auto reload >_< :3"][v] = v.Ammo:GetPropertyChangedSignal("Value"):Connect(Ammo) end end end for i, v in pairs(LocalPlayer.Character:GetChildren()) do if v:IsA("Tool") and v:FindFirstChild("Ammo") then if not framework["connections"]["Anti Aim Viewer"][v] then framework["connections"]["Anti Aim Viewer"][v] = v.Activated:Connect(Aimbot) end -- if not framework["connections"]["auto reload >_< :3"][v] then framework["connections"]["auto reload >_< :3"][v] = v.Ammo:GetPropertyChangedSignal("Value"):Connect(Ammo) end end end LocalPlayer.Character.ChildAdded:connect(function(v) if v:IsA("Tool") and v:FindFirstChild("Ammo") then if not framework["connections"]["Anti Aim Viewer"][v] then framework["connections"]["Anti Aim Viewer"][v] = v.Activated:Connect(Aimbot) end -- if not framework["connections"]["auto reload >_< :3"][v] then framework["connections"]["auto reload >_< :3"][v] = v.Ammo:GetPropertyChangedSignal("Value"):Connect(Ammo) end end end) LocalPlayer.CharacterAdded:connect(function(v) for i = 1, #framework["connections"]["Anti Aim Viewer"], 1 do framework["connections"]["Anti Aim Viewer"][i]:Disconnect() framework["connections"]["Anti Aim Viewer"][i] = nil framework["connections"]["auto reload >_< :3"][i]:Disconnect() framework["connections"]["auto reload >_< :3"][i] = nil end v.ChildAdded:connect(function(v) if v:IsA("Tool") and v:FindFirstChild("Ammo") then if not framework["connections"]["Anti Aim Viewer"][v] then framework["connections"]["Anti Aim Viewer"][v] = v.Activated:Connect(Aimbot) end -- if not framework["connections"]["auto reload >_< :3"][v] then framework["connections"]["auto reload >_< :3"][v] = v.Ammo:GetPropertyChangedSignal("Value"):Connect(Ammo) end end end) end) end -- // Target Back Track do task.spawn(function() while true do task.wait(flags["Back Track Delay"]/2) if utility.target and utility:ValidateClient(utility.target) then if flags["Back Track Enabled"] and flags["Back Track Method"] == "Clone" then utility:characterClone(utility.target, flags["Back Track Settings"].Color, flags["Back Track Material"], flags["Back Track Settings"].Transparency, utility.folders["Part Chams"]); task.wait(flags["Back Track Delay"]/2) utility.folders["Part Chams"]:ClearAllChildren(); end end end end) end -- // Hooks do local Old; Old = hookmetamethod(game, "__namecall", LPH_NO_VIRTUALIZE(function(self, ...) if tostring(self.Name) == "MainEvent" then local Args = {...} -- if getnamecallmethod() == "FireServer" and Args[1] == "UpdateMousePos" and not flags["Aim Viewer Bypass"] then if utility.target and utility.target.Character and flags["Silent_Bind"] then local part = (flags["Jump Prediction"] and utility.target.Character.Humanoid.FloorMaterial == Enum.Material.Air and "RightFoot") or (flags["Nearest Part"] and partClosest) or flags["Single Hit Part"] local yOffset = utility.target.Character.Humanoid.FloorMaterial == Enum.Material.Air and flags["Manual Offset Value"] or 0 -- if (checks == true) then if flags["Resolver"] then Args[2] = utility.target.Character[tostring(part)].Position + offset + NewVector3(0, yOffset, 0) else Args[2] = utility.target.Character[tostring(part)].Position + (utility.target.Character.HumanoidRootPart.Velocity * prediction) + NewVector3(0, yOffset, 0) end end end end -- return Old(self, unpack(Args)) end -- return Old(self, ...) end)) --[[local IndexThing IndexThing = hookmetamethod(game, "__index", function(self, k) if (self:IsA("Mouse") and (k == "Hit" or k == "Target")) then if utility.target and utility.target.Character and flags["Silent_Bind"] and LocalPlayer.Character then local part = (flags["Jump Prediction"] and utility.target.Character.Humanoid:GetState() == Enum.HumanoidStateType.Freefall and flags["Air Hit Part"]) or (flags["Nearest Part"] and partClosest) or flags["Single Hit Part"] local yOffset = utility.target.Character.Humanoid.FloorMaterial == Enum.Material.Air and flags["Manual Offset Value"] or 0 -- if (checks == true) then if flags["Resolver"] then getgenv().Hit = utility.target.Character[tostring(part)].Position + offset + NewVector3(0, yOffset, 0) else getgenv().Hit = utility.target.Character[tostring(part)].Position + (utility.target.Character.HumanoidRootPart.Velocity * prediction) + NewVector3(0, yOffset, 0) end return (k == "Hit" and CFrame.new(getgenv().Hit)) end end end return IndexThing(self, k) end)]] local old old = hookmetamethod(game, "__index", LPH_NO_VIRTUALIZE(function(self, key) if not checkcaller() then if key == "CFrame" and LocalPlayer.Character and self == LocalPlayer.Character.HumanoidRootPart and ((flags["Desync"] and flags["Desync Key"]) or (flags["Destroy Cheaters Key"] and flags["Destroy Cheaters"])) and C_Desync["OldPosition"] ~= nil and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") and LocalPlayer.Character:FindFirstChild("Humanoid") and LocalPlayer.Character:FindFirstChild("Humanoid").Health > 0 then return C_Desync["OldPosition"] end end return old(self, key) end)) end end Library:Notification("Loaded lunar.vip in " .. Floor((tick() - loadingTime) * 1000) .."ms", 3, Library.Accent, flags["Notification Position"]) --[[ NICE TRY POORON >_< :3333 ]]