local player = game.Players.LocalPlayer local library = {count = 0, queue = {}, callbacks = {}, rainbowtable = {}, toggled = true, binds = {}}; local defaults; do local dragger = {}; do local mouse = game:GetService("Players").LocalPlayer:GetMouse(); local inputService = game:GetService('UserInputService'); local heartbeat = game:GetService("RunService").Heartbeat; -- // credits to Ririchi / Inori for this cute drag function :) function dragger.new(frame) local s, event = pcall(function() return frame.MouseEnter end) if s then frame.Active = true; event:connect(function() local input = frame.InputBegan:connect(function(key) if key.UserInputType == Enum.UserInputType.MouseButton1 then local objectPosition = Vector2.new(mouse.X - frame.AbsolutePosition.X, mouse.Y - frame.AbsolutePosition.Y); while heartbeat:wait() and inputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton1) do pcall(function() frame:TweenPosition(UDim2.new(0, mouse.X - objectPosition.X + (frame.Size.X.Offset * frame.AnchorPoint.X), 0, mouse.Y - objectPosition.Y + (frame.Size.Y.Offset * frame.AnchorPoint.Y)), 'Out', 'Linear', 0.1, true); end) end end end) local leave; leave = frame.MouseLeave:connect(function() input:disconnect(); leave:disconnect(); end) end) end end game:GetService('UserInputService').InputBegan:connect(function(key, gpe) if (not gpe) then if key.KeyCode == Enum.KeyCode.F15 then library.toggled = not library.toggled; for i, data in next, library.queue do local pos = (library.toggled and data.p or UDim2.new(-1, 0, -0.5,0)) data.w:TweenPosition(pos, (library.toggled and 'Out' or 'In'), 'Quad', 0.15, true) wait(); end end end end) end local types = {}; do types.__index = types; function types.window(name, options) library.count = library.count + 1 local newWindow = library:Create('Frame', { Name = name; Size = UDim2.new(0, 190, 0, 30); BackgroundColor3 = options.topcolor; BorderSizePixel = 0; Parent = library.container; Position = UDim2.new(0, (15 + (200 * library.count) - 200), 0, 0); ZIndex = 3; library:Create('TextLabel', { Text = name; Size = UDim2.new(1, -10, 1, 0); Position = UDim2.new(0, 5, 0, 0); BackgroundTransparency = 1; Font = Enum.Font.Code; TextSize = options.titlesize; Font = options.titlefont; TextColor3 = options.titletextcolor; TextStrokeTransparency = library.options.titlestroke; TextStrokeColor3 = library.options.titlestrokecolor; ZIndex = 3; }); library:Create("TextButton", { Size = UDim2.new(0, 30, 0, 30); Position = UDim2.new(1, -35, 0, 0); BackgroundTransparency = 1; Text = "-"; TextSize = options.titlesize; Font = options.titlefont;--Enum.Font.Code; Name = 'window_toggle'; TextColor3 = options.titletextcolor; TextStrokeTransparency = library.options.titlestroke; TextStrokeColor3 = library.options.titlestrokecolor; ZIndex = 3; }); library:Create("Frame", { Name = 'Underline'; Size = UDim2.new(1, 0, 0, 2); Position = UDim2.new(0, 0, 1, -2); BackgroundColor3 = (options.underlinecolor ~= "rainbow" and options.underlinecolor or Color3.new()); BorderSizePixel = 0; ZIndex = 3; }); library:Create('Frame', { Name = 'container'; Position = UDim2.new(0, 0, 1, 0); Size = UDim2.new(1, 0, 0, 0); BorderSizePixel = 0; BackgroundColor3 = options.bgcolor; ClipsDescendants = false; library:Create('UIListLayout', { Name = 'List'; SortOrder = Enum.SortOrder.LayoutOrder; }) }); }) if options.underlinecolor == "rainbow" then table.insert(library.rainbowtable, newWindow:FindFirstChild('Underline')) end local window = setmetatable({ count = 0; object = newWindow; container = newWindow.container; toggled = true; flags = {}; }, types) table.insert(library.queue, { w = window.object; p = window.object.Position; }) newWindow:FindFirstChild("window_toggle").MouseButton1Click:connect(function() window.toggled = not window.toggled; newWindow:FindFirstChild("window_toggle").Text = (window.toggled and "+" or "-") if (not window.toggled) then window.container.ClipsDescendants = true; end wait(); local y = 0; for i, v in next, window.container:GetChildren() do if (not v:IsA('UIListLayout')) then y = y + v.AbsoluteSize.Y; end end local targetSize = window.toggled and UDim2.new(1, 0, 0, y+5) or UDim2.new(1, 0, 0, 0); local targetDirection = window.toggled and "In" or "Out" window.container:TweenSize(targetSize, targetDirection, "Quad", 0.15, true) wait(.15) if window.toggled then window.container.ClipsDescendants = false; end end) return window; end function types:Resize() local y = 0; for i, v in next, self.container:GetChildren() do if (not v:IsA('UIListLayout')) then y = y + v.AbsoluteSize.Y; end end self.container.Size = UDim2.new(1, 0, 0, y+5) end function types:GetOrder() local c = 0; for i, v in next, self.container:GetChildren() do if (not v:IsA('UIListLayout')) then c = c + 1 end end return c end function types:Label(text) local v = game:GetService'TextService':GetTextSize(text, 18, Enum.Font.SourceSans, Vector2.new(math.huge, math.huge)) local object = library:Create('Frame', { Size = UDim2.new(1, 0, 0, v.Y + 5); BackgroundTransparency = 1; library:Create('TextLabel', { Size = UDim2.new(1, 0, 1, 0); Position = UDim2.new(0, 10, 0, 0); LayoutOrder = self:GetOrder(); Text = text; TextSize = 18; Font = Enum.Font.SourceSans; TextColor3 = Color3.fromRGB(255, 255, 255); BackgroundTransparency = 1; TextXAlignment = Enum.TextXAlignment.Left; TextWrapped = true; }); Parent = self.container }) self:Resize(); end function types:Toggle(name, options, callback) local default = options.default or false; local location = options.location or self.flags; local flag = options.flag or ""; local callback = callback or function() end; location[flag] = default; local check = library:Create('Frame', { BackgroundTransparency = 1; Size = UDim2.new(1, 0, 0, 25); LayoutOrder = self:GetOrder(); library:Create('TextLabel', { Name = name; Text = "\r" .. name; BackgroundTransparency = 1; TextColor3 = library.options.textcolor; Position = UDim2.new(0, 5, 0, 0); Size = UDim2.new(1, -5, 1, 0); TextXAlignment = Enum.TextXAlignment.Left; Font = library.options.font; TextSize = library.options.fontsize; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; library:Create('TextButton', { Text = (location[flag] and utf8.char(10003) or ""); Font = library.options.font; TextSize = library.options.fontsize; Name = 'Checkmark'; Size = UDim2.new(0, 20, 0, 20); Position = UDim2.new(1, -25, 0, 4); TextColor3 = library.options.textcolor; BackgroundColor3 = library.options.bgcolor; BorderColor3 = library.options.bordercolor; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; }) }); Parent = self.container; }); local function click(t) location[flag] = not location[flag]; callback(location[flag]) check:FindFirstChild(name).Checkmark.Text = location[flag] and utf8.char(10003) or ""; end check:FindFirstChild(name).Checkmark.MouseButton1Click:connect(click) library.callbacks[flag] = click; if location[flag] == true then callback(location[flag]) end self:Resize(); return { Set = function(self, b) location[flag] = b; callback(location[flag]) check:FindFirstChild(name).Checkmark.Text = location[flag] and utf8.char(10003) or ""; end } end function types:Button(name, callback) callback = callback or function() end; local check = library:Create('Frame', { BackgroundTransparency = 1; Size = UDim2.new(1, 0, 0, 25); LayoutOrder = self:GetOrder(); library:Create('TextButton', { Name = name; Text = name; BackgroundColor3 = library.options.btncolor; BorderColor3 = library.options.bordercolor; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; TextColor3 = library.options.textcolor; Position = UDim2.new(0, 5, 0, 5); Size = UDim2.new(1, -10, 0, 20); Font = library.options.font; TextSize = library.options.fontsize; }); Parent = self.container; }); check:FindFirstChild(name).MouseButton1Click:connect(callback) self:Resize(); return { Fire = function() callback(); end } end function types:Box(name, options, callback) --type, default, data, location, flag) local type = options.type or ""; local default = options.default or ""; local data = options.data local location = options.location or self.flags; local flag = options.flag or ""; local callback = callback or function() end; local min = options.min or 0; local max = options.max or 9e9; if type == 'number' and (not tonumber(default)) then location[flag] = default; else location[flag] = ""; default = ""; end local check = library:Create('Frame', { BackgroundTransparency = 1; Size = UDim2.new(1, 0, 0, 25); LayoutOrder = self:GetOrder(); library:Create('TextLabel', { Name = name; Text = "\r" .. name; BackgroundTransparency = 1; TextColor3 = library.options.textcolor; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; Position = UDim2.new(0, 5, 0, 0); Size = UDim2.new(1, -5, 1, 0); TextXAlignment = Enum.TextXAlignment.Left; Font = library.options.font; TextSize = library.options.fontsize; library:Create('TextBox', { TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; Text = tostring(default); Font = library.options.font; TextSize = library.options.fontsize; Name = 'Box'; Size = UDim2.new(0, 60, 0, 20); Position = UDim2.new(1, -65, 0, 3); TextColor3 = library.options.textcolor; BackgroundColor3 = library.options.boxcolor; BorderColor3 = library.options.bordercolor; PlaceholderColor3 = library.options.placeholdercolor; }) }); Parent = self.container; }); local box = check:FindFirstChild(name):FindFirstChild('Box'); box.FocusLost:connect(function(e) local old = location[flag]; if type == "number" then local num = tonumber(box.Text) if (not num) then box.Text = tonumber(location[flag]) else location[flag] = math.clamp(num, min, max) box.Text = tonumber(location[flag]) end else location[flag] = tostring(box.Text) end callback(location[flag], old, e) end) if type == 'number' then box:GetPropertyChangedSignal('Text'):connect(function() box.Text = string.gsub(box.Text, "[%a+]", ""); end) end self:Resize(); return box end function types:Bind(name, options, callback) local location = options.location or self.flags; local keyboardOnly = options.kbonly or false local flag = options.flag or ""; local callback = callback or function() end; local default = options.default; if keyboardOnly and (not tostring(default):find('MouseButton')) then location[flag] = default end local banned = { Return = true; Space = true; Tab = true; Unknown = true; } local shortNames = { RightControl = 'RightCtrl'; LeftControl = 'LeftCtrl'; LeftShift = 'LShift'; RightShift = 'RShift'; MouseButton1 = "Mouse1"; MouseButton2 = "Mouse2"; } local allowed = { MouseButton1 = true; MouseButton2 = true; } local nm = (default and (shortNames[default.Name] or default.Name) or "None"); local check = library:Create('Frame', { BackgroundTransparency = 1; Size = UDim2.new(1, 0, 0, 30); LayoutOrder = self:GetOrder(); library:Create('TextLabel', { Name = name; Text = "\r" .. name; BackgroundTransparency = 1; TextColor3 = library.options.textcolor; Position = UDim2.new(0, 5, 0, 0); Size = UDim2.new(1, -5, 1, 0); TextXAlignment = Enum.TextXAlignment.Left; Font = library.options.font; TextSize = library.options.fontsize; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; BorderColor3 = library.options.bordercolor; BorderSizePixel = 1; library:Create('TextButton', { Name = 'Keybind'; Text = nm; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; Font = library.options.font; TextSize = library.options.fontsize; Size = UDim2.new(0, 60, 0, 20); Position = UDim2.new(1, -65, 0, 5); TextColor3 = library.options.textcolor; BackgroundColor3 = library.options.bgcolor; BorderColor3 = library.options.bordercolor; BorderSizePixel = 1; }) }); Parent = self.container; }); local button = check:FindFirstChild(name).Keybind; button.MouseButton1Click:connect(function() library.binding = true button.Text = "..." local a, b = game:GetService('UserInputService').InputBegan:wait(); local name = tostring(a.KeyCode.Name); local typeName = tostring(a.UserInputType.Name); if (a.UserInputType ~= Enum.UserInputType.Keyboard and (allowed[a.UserInputType.Name]) and (not keyboardOnly)) or (a.KeyCode and (not banned[a.KeyCode.Name])) then local name = (a.UserInputType ~= Enum.UserInputType.Keyboard and a.UserInputType.Name or a.KeyCode.Name); location[flag] = (a); button.Text = shortNames[name] or name; else if (location[flag]) then if (not pcall(function() return location[flag].UserInputType end)) then local name = tostring(location[flag]) button.Text = shortNames[name] or name else local name = (location[flag].UserInputType ~= Enum.UserInputType.Keyboard and location[flag].UserInputType.Name or location[flag].KeyCode.Name); button.Text = shortNames[name] or name; end end end wait(0.1) library.binding = false; end) if location[flag] then button.Text = shortNames[tostring(location[flag].Name)] or tostring(location[flag].Name) end library.binds[flag] = { location = location; callback = callback; }; self:Resize(); end function types:Section(name) local order = self:GetOrder(); local determinedSize = UDim2.new(1, 0, 0, 25) local determinedPos = UDim2.new(0, 0, 0, 4); local secondarySize = UDim2.new(1, 0, 0, 20); if order == 0 then determinedSize = UDim2.new(1, 0, 0, 21) determinedPos = UDim2.new(0, 0, 0, -1); secondarySize = nil end local check = library:Create('Frame', { Name = 'Section'; BackgroundTransparency = 1; Size = determinedSize; BackgroundColor3 = library.options.sectncolor; BorderSizePixel = 0; LayoutOrder = order; library:Create('TextLabel', { Name = 'section_lbl'; Text = name; BackgroundTransparency = 0; BorderSizePixel = 0; BackgroundColor3 = library.options.sectncolor; TextColor3 = library.options.textcolor; Position = determinedPos; Size = (secondarySize or UDim2.new(1, 0, 1, 0)); Font = library.options.font; TextSize = library.options.fontsize; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; }); Parent = self.container; }); self:Resize(); end function types:Slider(name, options, callback) local default = options.default or options.min; local min = options.min or 0; local max = options.max or 1; local location = options.location or self.flags; local precise = options.precise or false -- e.g 0, 1 vs 0, 0.1, 0.2, ... local flag = options.flag or ""; local callback = callback or function() end location[flag] = default; local check = library:Create('Frame', { BackgroundTransparency = 1; Size = UDim2.new(1, 0, 0, 25); LayoutOrder = self:GetOrder(); library:Create('TextLabel', { Name = name; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; Text = "\r" .. name; BackgroundTransparency = 1; TextColor3 = library.options.textcolor; Position = UDim2.new(0, 5, 0, 2); Size = UDim2.new(1, -5, 1, 0); TextXAlignment = Enum.TextXAlignment.Left; Font = library.options.font; TextSize = library.options.fontsize; library:Create('Frame', { Name = 'Container'; Size = UDim2.new(0, 60, 0, 20); Position = UDim2.new(1, -65, 0, 3); BackgroundTransparency = 1; --BorderColor3 = library.options.bordercolor; BorderSizePixel = 0; library:Create('TextLabel', { Name = 'ValueLabel'; Text = default; BackgroundTransparency = 1; TextColor3 = library.options.textcolor; Position = UDim2.new(0, -10, 0, 0); Size = UDim2.new(0, 1, 1, 0); TextXAlignment = Enum.TextXAlignment.Right; Font = library.options.font; TextSize = library.options.fontsize; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; }); library:Create('TextButton', { Name = 'Button'; Size = UDim2.new(0, 5, 1, -2); Position = UDim2.new(0, 0, 0, 1); AutoButtonColor = false; Text = ""; BackgroundColor3 = Color3.fromRGB(20, 20, 20); BorderSizePixel = 0; ZIndex = 2; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; }); library:Create('Frame', { Name = 'Line'; BackgroundTransparency = 0; Position = UDim2.new(0, 0, 0.5, 0); Size = UDim2.new(1, 0, 0, 1); BackgroundColor3 = Color3.fromRGB(255, 255, 255); BorderSizePixel = 0; }); }) }); Parent = self.container; }); local overlay = check:FindFirstChild(name); local renderSteppedConnection; local inputBeganConnection; local inputEndedConnection; local mouseLeaveConnection; local mouseDownConnection; local mouseUpConnection; check:FindFirstChild(name).Container.MouseEnter:connect(function() local function update() if renderSteppedConnection then renderSteppedConnection:disconnect() end renderSteppedConnection = game:GetService('RunService').RenderStepped:connect(function() local mouse = game:GetService("UserInputService"):GetMouseLocation() local percent = (mouse.X - overlay.Container.AbsolutePosition.X) / (overlay.Container.AbsoluteSize.X) percent = math.clamp(percent, 0, 1) percent = tonumber(string.format("%.2f", percent)) overlay.Container.Button.Position = UDim2.new(math.clamp(percent, 0, 0.99), 0, 0, 1) local num = min + (max - min) * percent local value = (precise and num or math.floor(num)) overlay.Container.ValueLabel.Text = value; callback(tonumber(value)) location[flag] = tonumber(value) end) end local function disconnect() if renderSteppedConnection then renderSteppedConnection:disconnect() end if inputBeganConnection then inputBeganConnection:disconnect() end if inputEndedConnection then inputEndedConnection:disconnect() end if mouseLeaveConnection then mouseLeaveConnection:disconnect() end if mouseUpConnection then mouseUpConnection:disconnect() end end inputBeganConnection = check:FindFirstChild(name).Container.InputBegan:connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then update() end end) inputEndedConnection = check:FindFirstChild(name).Container.InputEnded:connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then disconnect() end end) mouseDownConnection = check:FindFirstChild(name).Container.Button.MouseButton1Down:connect(update) mouseUpConnection = game:GetService("UserInputService").InputEnded:connect(function(a, b) if a.UserInputType == Enum.UserInputType.MouseButton1 and (mouseDownConnection.Connected) then disconnect() end end) end) if default ~= min then local percent = 1 - ((max - default) / (max - min)) local number = default number = tonumber(string.format("%.2f", number)) if (not precise) then number = math.floor(number) end overlay.Container.Button.Position = UDim2.new(math.clamp(percent, 0, 0.99), 0, 0, 1) overlay.Container.ValueLabel.Text = number end self:Resize(); return { Set = function(self, value) local percent = 1 - ((max - value) / (max - min)) local number = value number = tonumber(string.format("%.2f", number)) if (not precise) then number = math.floor(number) end overlay.Container.Button.Position = UDim2.new(math.clamp(percent, 0, 0.99), 0, 0, 1) overlay.Container.ValueLabel.Text = number location[flag] = number callback(number) end } end function types:SearchBox(text, options, callback) local list = options.list or {}; local flag = options.flag or ""; local location = options.location or self.flags; local callback = callback or function() end; local busy = false; local box = library:Create('Frame', { BackgroundTransparency = 1; Size = UDim2.new(1, 0, 0, 25); LayoutOrder = self:GetOrder(); library:Create('TextBox', { Text = ""; PlaceholderText = text; PlaceholderColor3 = Color3.fromRGB(60, 60, 60); Font = library.options.font; TextSize = library.options.fontsize; Name = 'Box'; Size = UDim2.new(1, -10, 0, 20); Position = UDim2.new(0, 5, 0, 4); TextColor3 = library.options.textcolor; BackgroundColor3 = library.options.dropcolor; BorderColor3 = library.options.bordercolor; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; library:Create('ScrollingFrame', { Position = UDim2.new(0, 0, 1, 1); Name = 'Container'; BackgroundColor3 = library.options.btncolor; ScrollBarThickness = 0; BorderSizePixel = 0; BorderColor3 = library.options.bordercolor; Size = UDim2.new(1, 0, 0, 0); library:Create('UIListLayout', { Name = 'ListLayout'; SortOrder = Enum.SortOrder.LayoutOrder; }); ZIndex = 2; }); }); Parent = self.container; }) local function rebuild(text) box:FindFirstChild('Box').Container.ScrollBarThickness = 0 for i, child in next, box:FindFirstChild('Box').Container:GetChildren() do if (not child:IsA('UIListLayout')) then child:Destroy(); end end if #text > 0 then for i, v in next, list do if string.sub(string.lower(v), 1, string.len(text)) == string.lower(text) then local button = library:Create('TextButton', { Text = v; Font = library.options.font; TextSize = library.options.fontsize; TextColor3 = library.options.textcolor; BorderColor3 = library.options.bordercolor; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; Parent = box:FindFirstChild('Box').Container; Size = UDim2.new(1, 0, 0, 20); LayoutOrder = i; BackgroundColor3 = library.options.btncolor; ZIndex = 2; }) button.MouseButton1Click:connect(function() busy = true; box:FindFirstChild('Box').Text = button.Text; wait(); busy = false; location[flag] = button.Text; callback(location[flag]) box:FindFirstChild('Box').Container.ScrollBarThickness = 0 for i, child in next, box:FindFirstChild('Box').Container:GetChildren() do if (not child:IsA('UIListLayout')) then child:Destroy(); end end box:FindFirstChild('Box').Container:TweenSize(UDim2.new(1, 0, 0, 0), 'Out', 'Quad', 0.25, true) end) end end end local c = box:FindFirstChild('Box').Container:GetChildren() local ry = (20 * (#c)) - 20 local y = math.clamp((20 * (#c)) - 20, 0, 100) if ry > 100 then box:FindFirstChild('Box').Container.ScrollBarThickness = 5; end box:FindFirstChild('Box').Container:TweenSize(UDim2.new(1, 0, 0, y), 'Out', 'Quad', 0.25, true) box:FindFirstChild('Box').Container.CanvasSize = UDim2.new(1, 0, 0, (20 * (#c)) - 20) end box:FindFirstChild('Box'):GetPropertyChangedSignal('Text'):connect(function() if (not busy) then rebuild(box:FindFirstChild('Box').Text) end end); local function reload(new_list) list = new_list; rebuild("") end self:Resize(); return reload, box:FindFirstChild('Box'); end function types:Dropdown(name, options, callback) local location = options.location or self.flags; local flag = options.flag or ""; local callback = callback or function() end; local list = options.list or {}; location[flag] = list[1] local check = library:Create('Frame', { BackgroundTransparency = 1; Size = UDim2.new(1, 0, 0, 25); BackgroundColor3 = Color3.fromRGB(25, 25, 25); BorderSizePixel = 0; LayoutOrder = self:GetOrder(); library:Create('Frame', { Name = 'dropdown_lbl'; BackgroundTransparency = 0; BackgroundColor3 = library.options.dropcolor; Position = UDim2.new(0, 5, 0, 4); BorderColor3 = library.options.bordercolor; Size = UDim2.new(1, -10, 0, 20); library:Create('TextLabel', { Name = 'Selection'; Size = UDim2.new(1, 0, 1, 0); Text = list[1]; TextColor3 = library.options.textcolor; BackgroundTransparency = 1; Font = library.options.font; TextSize = library.options.fontsize; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; }); library:Create("TextButton", { Name = 'drop'; BackgroundTransparency = 1; Size = UDim2.new(0, 20, 1, 0); Position = UDim2.new(1, -25, 0, 0); Text = 'v'; TextColor3 = library.options.textcolor; Font = library.options.font; TextSize = library.options.fontsize; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; }) }); Parent = self.container; }); local button = check:FindFirstChild('dropdown_lbl').drop; local input; button.MouseButton1Click:connect(function() if (input and input.Connected) then return end check:FindFirstChild('dropdown_lbl'):WaitForChild('Selection').TextColor3 = Color3.fromRGB(60, 60, 60); check:FindFirstChild('dropdown_lbl'):WaitForChild('Selection').Text = name; local c = 0; for i, v in next, list do c = c + 20; end local size = UDim2.new(1, 0, 0, c) local clampedSize; local scrollSize = 0; if size.Y.Offset > 100 then clampedSize = UDim2.new(1, 0, 0, 100) scrollSize = 5; end local goSize = (clampedSize ~= nil and clampedSize) or size; local container = library:Create('ScrollingFrame', { TopImage = 'rbxasset://textures/ui/Scroll/scroll-middle.png'; BottomImage = 'rbxasset://textures/ui/Scroll/scroll-middle.png'; Name = 'DropContainer'; Parent = check:FindFirstChild('dropdown_lbl'); Size = UDim2.new(1, 0, 0, 0); BackgroundColor3 = library.options.bgcolor; BorderColor3 = library.options.bordercolor; Position = UDim2.new(0, 0, 1, 0); ScrollBarThickness = scrollSize; CanvasSize = UDim2.new(0, 0, 0, size.Y.Offset); ZIndex = 5; ClipsDescendants = true; library:Create('UIListLayout', { Name = 'List'; SortOrder = Enum.SortOrder.LayoutOrder }) }) for i, v in next, list do local btn = library:Create('TextButton', { Size = UDim2.new(1, 0, 0, 20); BackgroundColor3 = library.options.btncolor; BorderColor3 = library.options.bordercolor; Text = v; Font = library.options.font; TextSize = library.options.fontsize; LayoutOrder = i; Parent = container; ZIndex = 5; TextColor3 = library.options.textcolor; TextStrokeTransparency = library.options.textstroke; TextStrokeColor3 = library.options.strokecolor; }) btn.MouseButton1Click:connect(function() check:FindFirstChild('dropdown_lbl'):WaitForChild('Selection').TextColor3 = library.options.textcolor check:FindFirstChild('dropdown_lbl'):WaitForChild('Selection').Text = btn.Text; location[flag] = tostring(btn.Text); callback(location[flag]) game:GetService('Debris'):AddItem(container, 0) input:disconnect(); end) end container:TweenSize(goSize, 'Out', 'Quad', 0.15, true) local function isInGui(frame) local mloc = game:GetService('UserInputService'):GetMouseLocation(); local mouse = Vector2.new(mloc.X, mloc.Y - 36); local x1, x2 = frame.AbsolutePosition.X, frame.AbsolutePosition.X + frame.AbsoluteSize.X; local y1, y2 = frame.AbsolutePosition.Y, frame.AbsolutePosition.Y + frame.AbsoluteSize.Y; return (mouse.X >= x1 and mouse.X <= x2) and (mouse.Y >= y1 and mouse.Y <= y2) end input = game:GetService('UserInputService').InputBegan:connect(function(a) if a.UserInputType == Enum.UserInputType.MouseButton1 and (not isInGui(container)) then check:FindFirstChild('dropdown_lbl'):WaitForChild('Selection').TextColor3 = library.options.textcolor check:FindFirstChild('dropdown_lbl'):WaitForChild('Selection').Text = location[flag]; container:TweenSize(UDim2.new(1, 0, 0, 0), 'In', 'Quad', 0.15, true) wait(0.15) game:GetService('Debris'):AddItem(container, 0) input:disconnect(); end end) end) self:Resize(); local function reload(self, array) options = array; location[flag] = array[1]; pcall(function() input:disconnect() end) check:WaitForChild('dropdown_lbl').Selection.Text = location[flag] check:FindFirstChild('dropdown_lbl'):WaitForChild('Selection').TextColor3 = library.options.textcolor game:GetService('Debris'):AddItem(container, 0) end return { Refresh = reload; } end end function library:Create(class, data) local obj = Instance.new(class); for i, v in next, data do if i ~= 'Parent' then if typeof(v) == "Instance" then v.Parent = obj; else obj[i] = v end end end obj.Parent = data.Parent; return obj end function library:CreateWindow(name, options) if (not library.container) then library.container = self:Create("ScreenGui", { self:Create('Frame', { Name = 'Container'; Size = UDim2.new(1, -30, 1, 0); Position = UDim2.new(0, 20, 0, 20); BackgroundTransparency = 1; Active = false; }); Parent = game:GetService("CoreGui"); }):FindFirstChild('Container'); end if (not library.options) then library.options = setmetatable(options or {}, {__index = defaults}) end local window = types.window(name, library.options); dragger.new(window.object); return window end default = { topcolor = Color3.fromRGB(30, 30, 30); titlecolor = Color3.fromRGB(255, 255, 255); underlinecolor = Color3.fromRGB(0, 255, 140); bgcolor = Color3.fromRGB(35, 35, 35); boxcolor = Color3.fromRGB(35, 35, 35); btncolor = Color3.fromRGB(25, 25, 25); dropcolor = Color3.fromRGB(25, 25, 25); sectncolor = Color3.fromRGB(25, 25, 25); bordercolor = Color3.fromRGB(80, 80, 80); font = Enum.Font.SourceSans; titlefont = Enum.Font.Code; fontsize = 17; titlesize = 18; textstroke = 1; titlestroke = 1; strokecolor = Color3.fromRGB(0, 0, 0); textcolor = Color3.fromRGB(255, 255, 255); titletextcolor = Color3.fromRGB(255, 255, 255); placeholdercolor = Color3.fromRGB(255, 255, 255); titlestrokecolor = Color3.fromRGB(0, 0, 0); } library.options = setmetatable({}, {__index = default}) spawn(function() while true do for i=0, 1, 1 / 300 do for _, obj in next, library.rainbowtable do obj.BackgroundColor3 = Color3.fromHSV(i, 1, 1); end wait() end; end end) local function isreallypressed(bind, inp) local key = bind if typeof(key) == "Instance" then if key.UserInputType == Enum.UserInputType.Keyboard and inp.KeyCode == key.KeyCode then return true; elseif tostring(key.UserInputType):find('MouseButton') and inp.UserInputType == key.UserInputType then return true end end if tostring(key):find'MouseButton1' then return key == inp.UserInputType else return key == inp.KeyCode end end game:GetService("UserInputService").InputBegan:connect(function(input) if (not library.binding) then for idx, binds in next, library.binds do local real_binding = binds.location[idx]; if real_binding and isreallypressed(real_binding, input) then binds.callback() end end end end) end library.options.underlinecolor = "rainbow" -- Farming Tab local Farming = library:CreateWindow("Farming") Farming:Section("- Karma Farms -") local GK = Farming:Toggle("Auto-Good Karma", {flag = "GK"}) local BK = Farming:Toggle("Auto-Bad Karma", {flag = "BK"}) Farming:Section("- Ultra Coins -") local Swing = Farming:Toggle("Auto-Swing", {flag = "Swing"}) local Sell = Farming:Toggle("Auto-Sell", {flag = "Sell"}) local BackpackFull = Farming:Toggle("Auto-Full Sell", {flag = "FullSell"}) Farming:Section("- Ultra Chi -") local Chi = Farming:Toggle("Auto-Chi", {flag = "Chi"}) Farming:Section("- Boss Farms -") local Boss = Farming:Toggle("Auto-Robot Boss", {flag = "Boss"}) local ETBoss = Farming:Toggle("Auto-Eternal Boss", {flag = "EBoss"}) local AMBoss = Farming:Toggle("Auto-Ancient Boss", {flag = "ABoss"}) local SNB = Farming:Toggle("Auto-Santa Boss", {flag = "SBoss"}) local AllBoss = Farming:Toggle("Auto-All Bosses", {flag = "AllBosses"}) Farming:Section("- Give Pet Levels -") local EAR = Farming:Toggle("Auto-Pet Levels", {flag = "L"}) -- Auto-Buy Tab local AutoBuy = library:CreateWindow("Auto-Buy") AutoBuy:Section("- Auto-Buy Stuff -") local Rank = AutoBuy:Toggle("Auto-Rank", {flag = "Rank"}) local Sword = AutoBuy:Toggle("Auto-Sword", {flag = "Sword"}) local Belt = AutoBuy:Toggle("Auto-Belt", {flag = "Belt"}) local Skill = AutoBuy:Toggle("Auto-Skills", {flag = "Skill"}) local Shuriken = AutoBuy:Toggle("Auto-Shurikens", {flag = "Shurikens"}) _G.Enabled = AutoBuy.flags.Purchase _G.Sword = AutoBuy.flags.Sword _G.Belt = AutoBuy.flags.Belt _G.Rank = AutoBuy.flags.Rank _G.Skill = AutoBuy.flags.Skill local Pets = library:CreateWindow("Pet Stuff") -- Open Pets Pets:Section("- Open Pets -") local Settings = {} local Crystals = {} for i,v in next, game.workspace.mapCrystalsFolder:GetChildren() do if v then table.insert(Crystals,v.Name) end end Pets:Dropdown('Crystals', {location = Settings, flag = "Crystal", list = Crystals}) Pets:Toggle("Open Eggs", {location = Settings, flag = "TEgg"}) -- Pet Options Pets:Section("- Pet Options -") local Evolve = Pets:Toggle("Auto-Evolve", {flag = "Evolve"}) local Eternalise = Pets:Toggle("Auto-Eternalise", {flag = "Eternalise"}) local Immortalize = Pets:Toggle("Auto-Immortalize", {flag = "Immortalize"}) local Legend = Pets:Toggle("Auto-Legend", {flag = "Legend"}) local Elemental = Pets:Toggle("Auto-Elementalize", {flag = "Elemental"}) -- Sell Pets Pets:Section("- Sell Pets -") local Basic = Pets:Toggle("Sell All Basic", {flag = "SBasic"}) local Advanced = Pets:Toggle("Sell All Advanced", {flag = "SAdvanced"}) local Rare = Pets:Toggle("Sell All Rare", {flag = "SRare"}) local Epic = Pets:Toggle("Sell All Epic", {flag = "SEpic"}) local Unique = Pets:Toggle("Sell All Unique", {flag = "SUnique"}) local Omega = Pets:Toggle("Sell All Omega", {flag = "SOmega"}) local Elite = Pets:Toggle("Sell All Elite", {flag = "SElite"}) local Infinity = Pets:Toggle("Sell All Infinity", {flag = "SInfinity"}) -- Sell Seperate Pets Tab local Pets2 = library:CreateWindow("More Pet Stuff") Pets2:Section("- Sell Separate Pets -") local Pet1 = Pets2:Toggle("Sell All Winter Kitty", {flag = "S1"}) local Pet2 = Pets2:Toggle("Sell All Polar Bear", {flag = "S2"}) local Pet3 = Pets2:Toggle("Sell All Sensei Reindeer", {flag = "S3"}) local Pet4 = Pets2:Toggle("Sell All Dark Penguin", {flag = "S4"}) local Pet5 = Pets2:Toggle("Sell All Sleigh Rider", {flag = "S5"}) -- Misc local Misc = library:CreateWindow("Misc") Misc:Section("- Other OP Scripts -") local Shuriken = Misc:Toggle("Fast Shuriken", {flag = "Fast"}) local Shuriken2 = Misc:Toggle("Slow Shuriken", {flag = "Slow"}) local Invis = Misc:Toggle("Invisibility", {flag = "Invis"}) -- Collect All Chest local ChestCollect = Misc:Button("Collect All Chest", function() game:GetService("Workspace").mythicalChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").goldenChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").enchantedChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").magmaChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").legendsChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").eternalChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").saharaChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").thunderChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").ancientChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").midnightShadowChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").groupRewardsCircle["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace")["Daily Chest"].circleInner.CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace")["wonderChest"].circleInner.CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(3.5) game:GetService("Workspace").wonderChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame game:GetService("Workspace").midnightShadowChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame game:GetService("Workspace").ancientChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").midnightShadowChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").thunderChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").saharaChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").eternalChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").legendsChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").magmaChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").enchantedChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").goldenChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").mythicalChest["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace").groupRewardsCircle["circleInner"].CFrame = game.Workspace.Part.CFrame game:GetService("Workspace")["Daily Chest"].circleInner.CFrame = game.Workspace.Part.CFrame end) -- Collect Light Karma Chest local LightKarma = Misc:Button("Collect Light Chest", function() game:GetService("Workspace").lightKarmaChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(5) game:GetService("Workspace").lightKarmaChest["circleInner"].CFrame = game.Workspace.Part.CFrame end) -- Collect Dark Karma Chest local ChestCollect = Misc:Button("Collect Evil Chest", function() game:GetService("Workspace").evilKarmaChest["circleInner"].CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame wait(5) game:GetService("Workspace").evilKarmaChest["circleInner"].CFrame = game.Workspace.Part.CFrame end) -- Unlock All Islands local UnlockIsland = Misc:Button("Unlock Islands", function() for i,v in next, game.workspace.islandUnlockParts:GetChildren() do if v then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = v.islandSignPart.CFrame; wait(.5) end end end) -- Max Jump local MaxJP = Misc:Button("Max Jumps", function() while wait(.0001) do game.Players.LocalPlayer.multiJumpCount.Value = "50" end end) -- Hide Name local HideName = Misc:Button("Hide Name", function() local plrname = game.Players.LocalPlayer.Name workspace[plrname].Head.nameGui:Destroy() end) -- ESP local ESP = Misc:Button("ESP", function() function isnil(thing) return (thing == nil) end local function round(n) return math.floor(tonumber(n) + 0.5) end function UpdatePlayerChams() for i,v in pairs(game:GetService'Players':GetChildren()) do pcall(function() if not isnil(v.Character) then for _,k in pairs(v.Character:GetChildren()) do if k:IsA'BasePart' and not k:FindFirstChild'Cham' then local cham = Instance.new('BoxHandleAdornment',k) cham.ZIndex= 10 cham.Adornee=k cham.AlwaysOnTop=true cham.Size=k.Size cham.Transparency=.8 cham.Color3=Color3.new(0,0,1) cham.Name = 'Cham' end end if not isnil(v.Character.Head) and not v.Character.Head:FindFirstChild'NameEsp' then local bill = Instance.new('BillboardGui',v.Character.Head) bill.Name = 'NameEsp' bill.Size=UDim2.new(1,200,1,30) bill.Adornee=v.Character.Head bill.AlwaysOnTop=true local name = Instance.new('TextLabel',bill) name.TextWrapped=true name.Text = (v.Name ..' '.. round((game:GetService('Players').LocalPlayer.Character.Head.Position - v.Character.Head.Position).Magnitude/3) ..'m') name.Size = UDim2.new(1,0,1,0) name.TextYAlignment='Top' name.TextColor3=Color3.new(1,1,1) name.BackgroundTransparency=1 else v.Character.Head.NameEsp.TextLabel.Text = (v.Name ..' '.. round((game:GetService('Players').LocalPlayer.Character.Head.Position - v.Character.Head.Position).Magnitude/3) ..'m') end end end) end end while wait() do UpdatePlayerChams() end end) -- Toggle Popups (Chi/Coin thigns) Misc:Bind("Toggle Popups", {flag = "pop", owo = true}, function() game:GetService("Players").LocalPlayer.PlayerGui.statEffectsGui.Enabled = not game:GetService("Players").LocalPlayer.PlayerGui.statEffectsGui.Enabled game:GetService("Players").LocalPlayer.PlayerGui.hoopGui.Enabled = not game:GetService("Players").LocalPlayer.PlayerGui.hoopGui.Enabled end) -- Toggable GUI Key Misc:Bind("Toggle GUI Key", {flag = "Toggle", owo = true}, function() library.toggled = not library.toggled; for i, data in next, library.queue do local pos = (library.toggled and data.p or UDim2.new(-1, 0, -0.5,0)) data.w:TweenPosition(pos, (library.toggled and 'Out' or 'In'), 'Quad', 0.15, true) wait(); end end) -- Destroy GUI local Kill = Misc:Button("Destroy GUI", function() game:GetService("CoreGui").ScreenGui:Destroy() end) local Teleports = library:CreateWindow("Teleports") -- World/Island Teleports Teleports:Section("- Islands -") local Islands = {} for i,v in next, game.workspace.islandUnlockParts:GetChildren() do if v then table.insert(Islands, v.Name) end end Teleports:Dropdown('Teleports', {list = Islands}, function(a) game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game.Workspace.islandUnlockParts[a].islandSignPart.CFrame end) -- Utilitys Teleports:Section("- Utilitys -") local Shop = Teleports:Button("Shop", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game:GetService("Workspace").shopAreaCircles["shopAreaCircle11"].circleInner.CFrame end) local Skills = Teleports:Button("Skills Shop", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game:GetService("Workspace").skillAreaCircles["skillsAreaCircle11"].circleInner.CFrame end) local Skills1 = Teleports:Button("Light Skills Shop", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(-116.49514, 3.24800324, 0.0838552266) end) local Skills2 = Teleports:Button("Dark Skills Shop", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(-116.549767, 3.24800324, 58.087841) end) local KOTH = Teleports:Button("KOTH", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game:GetService("Workspace").kingOfTheHillPart.CFrame end) -- Training Area Teleports Teleports:Section("- Training Areas -") local a1 = Teleports:Button("Mystical Waters (Good)", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(347.74881, 8824.53809, 114.271019) end) local a2 = Teleports:Button("Sword of Legends (Good)", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(1834.15967, 38.704483, -141.375641) end) local a5 = Teleports:Button("Elemental Tornado (Good)", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(299.758484, 30383.0957, -90.1542206) end) local a3 = Teleports:Button("Lava Pit (Bad)", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(-116.631485, 12952.5381, 271.14624) end) local a4 = Teleports:Button("Tornado (Bad)", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(325.641174, 16872.0938, -9.9906435) end) local a6 = Teleports:Button("Swords Of Ancients (Bad)", function() game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(648.365662, 38.704483, 2409.72266) end) if _G.PlaceLoopTP == true then local Teleports2 = library:CreateWindow("More Teleports") Teleports2:Section("- Training Areas (Looped) -") local avh = Teleports2:Button("Mystical Waters (Good)", function() while true do wait(.001) if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(347.74881, 8824.53809, 114.271019) end end end) local sdgy6 = Teleports2:Button("Sword of Legends (Good)", function() while true do wait(.001) if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(1834.15967, 38.704483, -141.375641) end end end) local asdy = Teleports2:Button("Elemental Tornado (Good)", function() while true do wait(.001) if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(299.758484, 30383.0957, -90.1542206) end end end) local yassf = Teleports2:Button("Lava Pit (Bad)", function() while true do wait(.001) if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(-116.631485, 12952.5381, 271.14624) end end end) local sdfj = Teleports2:Button("Tornado (Bad)", function() while true do wait(.001) if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(325.641174, 16872.0938, -9.9906435) end end end) local jhas = Teleports2:Button("Swords Of Ancients (Bad)", function() while true do wait(.001) if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(648.365662, 38.704483, 2409.72266) end end end) end -- Open Crystals spawn(function() while wait(.01) do if Settings.TEgg then local oh1 = "openCrystal" local oh2 = Settings.Crystal game:GetService("ReplicatedStorage").rEvents.openCrystalRemote:InvokeServer(oh1, oh2) end end end) -- Auto-Swing spawn(function() while wait() do if Farming.flags.Swing then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then if game.Players.LocalPlayer.Character:FindFirstChildOfClass("Tool") then game.Players.LocalPlayer.ninjaEvent:FireServer("swingKatana") else for i,v in pairs(game.Players.LocalPlayer.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackShurikenScript") then game.Players.LocalPlayer.Character.Humanoid:EquipTool(v) wait() if v.ClassName == "Tool" and v:FindFirstChild("attackKatanaScript") then game.Players.LocalPlayer.Character.Humanoid:EquipTool(v) end end end end end end end end) -- Auto-Sell spawn(function() while wait(0.01) do if Farming.flags.Sell then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then game.workspace.sellAreaCircles["sellAreaCircle7"].circleInner.CFrame = game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart").CFrame wait(.1) game.workspace.sellAreaCircles["sellAreaCircle7"].circleInner.CFrame = game.Workspace.Part.CFrame end end end end) -- Auto-Full Sell spawn(function() while wait(0.01) do if Farming.flags.FullSell then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then if player.PlayerGui.gameGui.maxNinjitsuMenu.Visible == true then game.workspace.sellAreaCircles["sellAreaCircle7"].circleInner.CFrame = game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart").CFrame wait(.05) game.workspace.sellAreaCircles["sellAreaCircle7"].circleInner.CFrame = game.Workspace.Part.CFrame end end end end end) -- Invisibility spawn(function() while wait(0.001) do if Misc.flags.Invis then local A_1 = "goInvisible" local Event = game.Players.LocalPlayer.ninjaEvent Event:FireServer(A_1) end end end) -- Auto-Pet Levels spawn(function() while wait(0.00011) do if Farming.flags.L then local plr = game.Players.LocalPlayer for _,v in pairs(workspace.Hoops:GetDescendants()) do if v.ClassName == "MeshPart" then v.touchPart.CFrame = plr.Character.HumanoidRootPart.CFrame end end end end end) -- Good Karma Farm spawn(function() while wait(0.4) do if Farming.flags.GK then loadstring(game:HttpGet(('https://pastebin.com/raw/AaqHqPyw'),true))() end end end) -- Bad Karma Farm spawn(function() while wait(0.4) do if Farming.flags.BK then loadstring(game:HttpGet(('https://pastebin.com/raw/wEEB3nQt'),true))() end end end) -- Auto-Normal Boss spawn(function() while wait(.001) do if Farming.flags.Boss then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then if game:GetService("Workspace").bossFolder:WaitForChild("RobotBoss"):WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game.Workspace.bossFolder.RobotBoss.HumanoidRootPart.CFrame if player.Character:FindFirstChildOfClass("Tool") then player.Character:FindFirstChildOfClass("Tool"):Activate() else for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackKatanaScript") then v.attackTime.Value = 0.2 player.Character.Humanoid:EquipTool(v) if attackfar then for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackShurikenScript") then player.Character.Humanoid:EquipTool(v) end end end end end end end end end end end) -- Auto-Eternal Boss spawn(function() while wait(.001) do if Farming.flags.EBoss then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then if game:GetService("Workspace").bossFolder:WaitForChild("EternalBoss"):WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game.Workspace.bossFolder.EternalBoss.HumanoidRootPart.CFrame if player.Character:FindFirstChildOfClass("Tool") then player.Character:FindFirstChildOfClass("Tool"):Activate() else for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackKatanaScript") then v.attackTime.Value = 0.2 player.Character.Humanoid:EquipTool(v) if attackfar then for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackShurikenScript") then player.Character.Humanoid:EquipTool(v) end end end end end end end end end end end) -- Auto-Anchient Boss spawn(function() while wait(.001) do if Farming.flags.ABoss then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then if game:GetService("Workspace").bossFolder:WaitForChild("AncientMagmaBoss"):WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game.Workspace.bossFolder.AncientMagmaBoss.HumanoidRootPart.CFrame if player.Character:FindFirstChildOfClass("Tool") then player.Character:FindFirstChildOfClass("Tool"):Activate() else for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackKatanaScript") then v.attackTime.Value = 0.2 player.Character.Humanoid:EquipTool(v) if attackfar then for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackShurikenScript") then player.Character.Humanoid:EquipTool(v) end end end end end end end end end end end) spawn(function() while wait(.001) do if Farming.flags.SBoss then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then if game:GetService("Workspace").bossFolder:WaitForChild("Samurai Santa"):WaitForChild("HumanoidRootPart") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game.Workspace.bossFolder["Samurai Santa"].HumanoidRootPart.CFrame if player.Character:FindFirstChildOfClass("Tool") then player.Character:FindFirstChildOfClass("Tool"):Activate() else for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackKatanaScript") then v.attackTime.Value = 0.2 player.Character.Humanoid:EquipTool(v) if attackfar then for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackShurikenScript") then player.Character.Humanoid:EquipTool(v) end end end end end end end end end end end) -- Auto-All Bosses spawn(function() while wait(.001) do if Farming.flags.AllBosses then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then if game.Workspace.bossFolder:FindFirstChild("Samurai Santa") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game.Workspace.bossFolder["Samurai Santa"].HumanoidRootPart.CFrame else if not game.Workspace.bossFolder:FindFirstChild("Samurai Santa") then if game.Workspace.bossFolder:FindFirstChild("AncientMagmaBoss") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game.Workspace.bossFolder.AncientMagmaBoss.HumanoidRootPart.CFrame else if not game.Workspace.bossFolder:FindFirstChild("AncientMagmaBoss") then if game.Workspace.bossFolder:FindFirstChild("EternalBoss") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game.Workspace.bossFolder.EternalBoss.HumanoidRootPart.CFrame else if not game.Workspace.bossFolder:FindFirstChild("EternalBoss") then if game.Workspace.bossFolder:FindFirstChild("RobotBoss") then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = game.Workspace.bossFolder.RobotBoss.HumanoidRootPart.CFrame end end end end end end end if player.Character:FindFirstChildOfClass("Tool") then player.Character:FindFirstChildOfClass("Tool"):Activate() else for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackKatanaScript") then v.attackTime.Value = 0.2 player.Character.Humanoid:EquipTool(v) if attackfar then for i,v in pairs(player.Backpack:GetChildren()) do if v.ClassName == "Tool" and v:FindFirstChild("attackShurikenScript") then player.Character.Humanoid:EquipTool(v) end end end end end end end end end end) -- Auto-Buy Swords spawn(function() while wait(0.5) do if AutoBuy.flags.Sword then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then local oh1 = "buyAllSwords" local oh2 = {"Ground", "Astral Island", "Space Island","Tundra Island", "Eternal Island", "Sandstorm", "Thunderstorm", "Ancient Inferno Island", "Midnight Shadow Island", "Mythical Souls Island", "Winter Wonder Island"} for i = 1,#oh2 do game:GetService("Players").LocalPlayer.ninjaEvent:FireServer(oh1, oh2[i]) end end end end end) -- Auto-Buy Belts spawn(function() while wait(0.5) do if AutoBuy.flags.Belt then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then local oh1 = "buyAllBelts" local oh2 = {"Ground", "Astral Island", "Space Island","Tundra Island", "Eternal Island", "Sandstorm", "Thunderstorm", "Ancient Inferno Island", "Midnight Shadow Island", "Mythical Souls Island", "Winter Wonder Island"} for i = 1,#oh2 do game:GetService("Players").LocalPlayer.ninjaEvent:FireServer(oh1, oh2[i]) end end end end end) -- Auto-Buy Skills spawn(function() while wait(0.5) do if AutoBuy.flags.Skill then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then local oh1 = "buyAllSkills" local oh2 = {"Ground", "Astral Island", "Space Island","Tundra Island", "Eternal Island", "Sandstorm", "Thunderstorm", "Ancient Inferno Island", "Midnight Shadow Island", "Mythical Souls Island", "Winter Wonder Island"} for i = 1,#oh2 do game:GetService("Players").LocalPlayer.ninjaEvent:FireServer(oh1, oh2[i]) end end end end end) -- Auto-Buy Ranks spawn(function() while wait(0.5) do if AutoBuy.flags.Rank then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then local oh1 = "buyRank" local oh2 = game:GetService("ReplicatedStorage").Ranks.Ground:GetChildren() for i = 1,#oh2 do game:GetService("Players").LocalPlayer.ninjaEvent:FireServer(oh1, oh2[i].Name) end end end end end) -- Auto-Buy Shurikens spawn(function() while wait(0.5) do if AutoBuy.flags.Shurikens then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then local oh1 = "buyAllShurikens" local oh2 = {"Ground", "Astral Island", "Space Island","Tundra Island", "Eternal Island", "Sandstorm", "Thunderstorm", "Ancient Inferno Island", "Midnight Shadow Island", "Mythical Souls Island", "Winter Wonder Island"} for i = 1,#oh2 do game:GetService("Players").LocalPlayer.ninjaEvent:FireServer(oh1, oh2[i]) end end end end end) -- Auto-Chi spawn(function() while wait(0.033) do if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then if Farming.flags.Chi then for i,v in pairs(game.Workspace.spawnedCoins.Valley:GetChildren()) do if v.Name == "Blue Chi Crate" then game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(v.Position) wait(.16) end end end end end end) -- Auto Evolve Pet spawn(function() while wait(3) do if Pets.flags.Evolve then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game:GetService("Players").LocalPlayer.petsFolder:GetChildren()) do for i,x in pairs(v:GetChildren()) do local oh1 = "evolvePet" local oh2 = x.Name game:GetService("ReplicatedStorage").rEvents.petEvolveEvent:FireServer(oh1, oh2) end end end end end end) -- Auto-Eternalize Pet spawn(function() while wait(3) do if Pets.flags.Eternalise then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game:GetService("Players").LocalPlayer.petsFolder:GetChildren()) do for i,x in pairs(v:GetChildren()) do local oh1 = "eternalizePet" local oh2 = x.Name game:GetService("ReplicatedStorage").rEvents.petEternalizeEvent:FireServer(oh1, oh2) end end end end end end) -- Auto-Immortalize Pet spawn(function() while wait(3) do if Pets.flags.Immortalize then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game:GetService("Players").LocalPlayer.petsFolder:GetChildren()) do for i,x in pairs(v:GetChildren()) do local oh1 = "immortalizePet" local oh2 = x.Name game:GetService("ReplicatedStorage").rEvents.petImmortalizeEvent:FireServer(oh1, oh2) end end end end end end) -- Auto-Legend Pet spawn(function() while wait(3) do if Pets.flags.Legend then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game:GetService("Players").LocalPlayer.petsFolder:GetChildren()) do for i,x in pairs(v:GetChildren()) do local oh1 = "legendizePet" local oh2 = x.Name game:GetService("ReplicatedStorage").rEvents.petLegendEvent:FireServer(oh1, oh2) end end end end end end) spawn(function() while wait(3) do if Pets.flags.Elemental then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game:GetService("Players").LocalPlayer.petsFolder:GetChildren()) do for i,x in pairs(v:GetChildren()) do local oh1 = "elementalizePet" local oh2 = x.Name game:GetService("ReplicatedStorage").rEvents.petLegendEvent:FireServer(oh1, oh2) end end end end end end) -- Sell All Basics spawn(function() while wait(1) do if Pets.flags.SBasic then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Basic:GetChildren()) do game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end) -- Sell All Advanced spawn(function() while wait(1) do if Pets.flags.SAdvanced then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Advanced:GetChildren()) do game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end) -- Sell All Rares spawn(function() while wait(1) do if Pets.flags.SRare then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Rare:GetChildren()) do game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end) -- Sell All Epics spawn(function() while wait(1) do if Pets.flags.SEpic then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Epic:GetChildren()) do game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end) -- Sell All Uniques spawn(function() while wait(1) do if Pets.flags.SUnique then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Unique:GetChildren()) do game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end) -- Sell All Omegas spawn(function() while wait(1) do if Pets.flags.SOmega then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Omega:GetChildren()) do game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end) -- Sell All Elites spawn(function() while wait(1) do if Pets.flags.SElite then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Elite:GetChildren()) do game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end) -- Sell All Infinites spawn(function() while wait(1) do if Pets.flags.SInfinity then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Infinity:GetChildren()) do game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end) -- Second Pet Stuff Tab spawn(function() while wait(1) do if Pets2.flags.S1 then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Infinity:GetChildren()) do if v.Name == "Winter Wonder Kitty" then game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end end) spawn(function() while wait(1) do if Pets2.flags.S2 then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Infinity:GetChildren()) do if v.Name == "Winter Legends Polar Bear" then game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end end) spawn(function() while wait(1) do if Pets2.flags.S3 then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Infinity:GetChildren()) do if v.Name == "Christmas Sensei Reindeer" then game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end end) spawn(function() while wait(1) do if Pets2.flags.S4 then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Infinity:GetChildren()) do if v.Name == "Dark Blizzard Master Penguin" then game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end end) spawn(function() while wait(1) do if Pets2.flags.S5 then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then for i,v in pairs(game.Players.LocalPlayer.petsFolder.Infinity:GetChildren()) do if v.Name == "Cybernetic Sleigh Rider" then game.ReplicatedStorage.rEvents.sellPetEvent:FireServer("sellPet", v) end end end end end end) -- Fast Shuriken spawn(function() while wait(.001) do if Misc.flags.Fast then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then local plr = game.Players.LocalPlayer local Mouse = plr:GetMouse() local velocity = 1000 for _,p in pairs(game.Workspace.shurikensFolder:GetChildren()) do if p.Name == "Handle" then if p:FindFirstChild("BodyVelocity") then local bv = p:FindFirstChildOfClass("BodyVelocity") bv.MaxForce = Vector3.new(math.huge,math.huge,math.huge) bv.Velocity = Mouse.Hit.lookVector * velocity end end end end end end end) -- Slow Shuriken spawn(function() while wait(.001) do if Misc.flags.Slow then if game.Players.LocalPlayer.Character:WaitForChild("HumanoidRootPart") then local plr = game.Players.LocalPlayer local Mouse = plr:GetMouse() local velocity = 35 for _,p in pairs(game.Workspace.shurikensFolder:GetChildren()) do if p.Name == "Handle" then if p:FindFirstChild("BodyVelocity") then local bv = p:FindFirstChildOfClass("BodyVelocity") bv.MaxForce = Vector3.new(math.huge,math.huge,math.huge) bv.Velocity = Mouse.Hit.lookVector * velocity end end end end end end end) -- Anti-AFK local vu = game:GetService("VirtualUser") game:GetService("Players").LocalPlayer.Idled:connect( function() vu:Button2Down(Vector2.new(0, 0), workspace.CurrentCamera.CFrame) wait(1) vu:Button2Up(Vector2.new(0, 0), workspace.CurrentCamera.CFrame) end)