-- LocalScript: StarterPlayer > StarterPlayerScripts local Players = game:GetService("Players") local TweenService = game:GetService("TweenService") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local Workspace = game:GetService("Workspace") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") local camera = Workspace.CurrentCamera -------------------------------------------------------------------------------- -- 1. INTRO BANNER SYSTEM -------------------------------------------------------------------------------- local function playScriptIntro(scriptName) task.spawn(function() local introGui = Instance.new("ScreenGui") introGui.Name = "ScriptIntroGui" introGui.ResetOnSpawn = false introGui.Parent = playerGui local banner = Instance.new("Frame") banner.Size = UDim2.new(0.85, 0, 0, 65) banner.Position = UDim2.new(0.075, 0, -0.2, 0) banner.BackgroundColor3 = Color3.fromRGB(10, 15, 30) banner.BorderColor3 = Color3.fromRGB(0, 200, 255) banner.BorderSizePixel = 2 banner.Parent = introGui local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 10) corner.Parent = banner local txt = Instance.new("TextLabel") txt.Size = UDim2.new(1, -10, 1, 0) txt.Position = UDim2.new(0, 5, 0, 0) txt.BackgroundTransparency = 1 txt.Text = scriptName .. "\nmade by prime_weirdRick/villiamisdabest" txt.TextColor3 = Color3.fromRGB(0, 220, 255) txt.TextSize = 15 txt.Font = Enum.Font.GothamBold txt.TextWrapped = true txt.Parent = banner local slideIn = TweenService:Create(banner, TweenInfo.new(0.3, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { Position = UDim2.new(0.075, 0, 0.05, 0) }) slideIn:Play() slideIn.Completed:Wait() task.wait(1) local slideOut = TweenService:Create(banner, TweenInfo.new(0.3, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { Position = UDim2.new(0.075, 0, -0.2, 0) }) slideOut:Play() slideOut.Completed:Connect(function() introGui:Destroy() end) end) end -------------------------------------------------------------------------------- -- 2. GUI CLEANUP & DRAGGABLE UTILITY -------------------------------------------------------------------------------- local oldGui = playerGui:FindFirstChild("ExploitersRingGui") if oldGui then oldGui:Destroy() end local screenGui = Instance.new("ScreenGui") screenGui.Name = "ExploitersRingGui" screenGui.ResetOnSpawn = false screenGui.Parent = playerGui local function makeDraggable(guiObject) local dragging, dragInput, dragStart, startPos guiObject.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = guiObject.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) guiObject.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then dragInput = input end end) UserInputService.InputChanged:Connect(function(input) if input == dragInput and dragging then local delta = input.Position - dragStart guiObject.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y ) end end) end -------------------------------------------------------------------------------- -- 3. MAIN MENU SETUP & TOGGLE -------------------------------------------------------------------------------- local toggleBtn = Instance.new("TextButton") toggleBtn.Name = "ToggleButton" toggleBtn.Size = UDim2.new(0, 55, 0, 55) toggleBtn.Position = UDim2.new(0, 20, 0, 80) toggleBtn.Text = "PRIME" toggleBtn.TextSize = 13 toggleBtn.Font = Enum.Font.SourceSansBold toggleBtn.BackgroundColor3 = Color3.fromRGB(5, 15, 30) toggleBtn.TextColor3 = Color3.fromRGB(0, 245, 255) toggleBtn.Parent = screenGui local btnCorner = Instance.new("UICorner") btnCorner.CornerRadius = UDim.new(1, 0) btnCorner.Parent = toggleBtn local btnStroke = Instance.new("UIStroke") btnStroke.Color = Color3.fromRGB(0, 230, 255) btnStroke.Thickness = 3 btnStroke.Parent = toggleBtn makeDraggable(toggleBtn) local loadingFrame = Instance.new("Frame") loadingFrame.Name = "LoadingFrame" loadingFrame.Size = UDim2.new(0, 280, 0, 480) loadingFrame.Position = UDim2.new(0, 20, 0, 145) loadingFrame.BackgroundColor3 = Color3.fromRGB(3, 10, 20) loadingFrame.Visible = false loadingFrame.ZIndex = 10 loadingFrame.Parent = screenGui local loadCorner = Instance.new("UICorner") loadCorner.CornerRadius = UDim.new(0, 10) loadCorner.Parent = loadingFrame local loadStroke = Instance.new("UIStroke") loadStroke.Color = Color3.fromRGB(0, 230, 255) loadStroke.Thickness = 2.5 loadStroke.Parent = loadingFrame local loadLabel = Instance.new("TextLabel") loadLabel.Size = UDim2.new(1, -20, 0, 60) loadLabel.Position = UDim2.new(0, 10, 0.4, -30) loadLabel.Text = "Made by prime_weirdRick" loadLabel.TextSize = 16 loadLabel.Font = Enum.Font.SourceSansBold loadLabel.TextColor3 = Color3.fromRGB(0, 245, 255) loadLabel.TextWrapped = true loadLabel.BackgroundTransparency = 1 loadLabel.ZIndex = 11 loadLabel.Parent = loadingFrame local isMenuLoaded = false local isLoading = false local menuFrame = Instance.new("Frame") menuFrame.Name = "MenuFrame" menuFrame.Size = UDim2.new(0, 280, 0, 480) menuFrame.Position = UDim2.new(0, 20, 0, 145) menuFrame.BackgroundColor3 = Color3.fromRGB(4, 12, 25) menuFrame.Visible = false menuFrame.Active = true menuFrame.Parent = screenGui local menuCorner = Instance.new("UICorner") menuCorner.CornerRadius = UDim.new(0, 10) menuCorner.Parent = menuFrame local menuStroke = Instance.new("UIStroke") menuStroke.Color = Color3.fromRGB(0, 230, 255) menuStroke.Thickness = 2.5 menuStroke.Parent = menuFrame makeDraggable(menuFrame) toggleBtn.MouseButton1Click:Connect(function() if isLoading then return end if menuFrame.Visible then menuFrame.Visible = false loadingFrame.Visible = false else if not isMenuLoaded then isLoading = true loadingFrame.Position = menuFrame.Position loadingFrame.Visible = true loadLabel.TextTransparency = 0 task.delay(1.2, function() loadingFrame.Visible = false menuFrame.Position = loadingFrame.Position menuFrame.Visible = true isMenuLoaded = true isLoading = false end) else menuFrame.Visible = true end end end) -- TAB BAR SETUP local tabBar = Instance.new("Frame") tabBar.Name = "TabBar" tabBar.Size = UDim2.new(1, 0, 0, 35) tabBar.BackgroundColor3 = Color3.fromRGB(2, 8, 16) tabBar.Parent = menuFrame local tabBarCorner = Instance.new("UICorner") tabBarCorner.CornerRadius = UDim.new(0, 10) tabBarCorner.Parent = tabBar local function createTabBtn(text, posScale, sizeScale) local btn = Instance.new("TextButton") btn.Size = UDim2.new(sizeScale, 0, 1, 0) btn.Position = UDim2.new(posScale, 0, 0, 0) btn.Text = text btn.TextSize = 12 btn.Font = Enum.Font.SourceSansBold btn.BackgroundColor3 = Color3.fromRGB(8, 20, 40) btn.TextColor3 = Color3.fromRGB(0, 180, 240) btn.Parent = tabBar local tStroke = Instance.new("UIStroke") tStroke.Color = Color3.fromRGB(0, 160, 220) tStroke.Thickness = 1 tStroke.Parent = btn return btn end local tab1Btn = createTabBtn("Manipulation", 0, 0.33) local tab2Btn = createTabBtn("Patterns", 0.33, 0.33) local tab3Btn = createTabBtn("Utilities", 0.66, 0.34) local function createTabContainer() local container = Instance.new("ScrollingFrame") container.Size = UDim2.new(1, 0, 1, -35) container.Position = UDim2.new(0, 0, 0, 35) container.CanvasSize = UDim2.new(0, 0, 0, 1050) container.BackgroundTransparency = 1 container.ScrollBarThickness = 5 container.ScrollBarImageColor3 = Color3.fromRGB(0, 230, 255) container.Visible = false container.Parent = menuFrame return container end local tab1 = createTabContainer() local tab2 = createTabContainer() local tab3 = createTabContainer() tab1.Visible = true local function switchTab(activeTab, activeBtn) tab1.Visible = false tab2.Visible = false tab3.Visible = false tab1Btn.TextColor3 = Color3.fromRGB(0, 140, 190) tab2Btn.TextColor3 = Color3.fromRGB(0, 140, 190) tab3Btn.TextColor3 = Color3.fromRGB(0, 140, 190) activeTab.Visible = true activeBtn.TextColor3 = Color3.fromRGB(0, 245, 255) end tab1Btn.MouseButton1Click:Connect(function() switchTab(tab1, tab1Btn) end) tab2Btn.MouseButton1Click:Connect(function() switchTab(tab2, tab2Btn) end) tab3Btn.MouseButton1Click:Connect(function() switchTab(tab3, tab3Btn) end) -------------------------------------------------------------------------------- -- 4. STEPPER INPUT BUILDER -------------------------------------------------------------------------------- local function createStepperInput(parent, labelText, defaultText, posY, step) step = step or 1 local label = Instance.new("TextLabel") label.Size = UDim2.new(0, 240, 0, 14) label.Position = UDim2.new(0, 15, 0, posY) label.Text = labelText label.TextSize = 11 label.Font = Enum.Font.SourceSansBold label.TextColor3 = Color3.fromRGB(0, 230, 255) label.TextXAlignment = Enum.TextXAlignment.Left label.BackgroundTransparency = 1 label.Parent = parent local minusBtn = Instance.new("TextButton") minusBtn.Size = UDim2.new(0, 30, 0, 24) minusBtn.Position = UDim2.new(0, 15, 0, posY + 16) minusBtn.Text = "-" minusBtn.TextSize = 14 minusBtn.Font = Enum.Font.SourceSansBold minusBtn.BackgroundColor3 = Color3.fromRGB(10, 30, 60) minusBtn.TextColor3 = Color3.fromRGB(0, 245, 255) minusBtn.Parent = parent local mCorner = Instance.new("UICorner") mCorner.CornerRadius = UDim.new(0, 4) mCorner.Parent = minusBtn local mStroke = Instance.new("UIStroke") mStroke.Color = Color3.fromRGB(0, 180, 240) mStroke.Thickness = 1 mStroke.Parent = minusBtn local box = Instance.new("TextBox") box.Size = UDim2.new(0, 170, 0, 24) box.Position = UDim2.new(0, 50, 0, posY + 16) box.Text = defaultText box.TextSize = 12 box.BackgroundColor3 = Color3.fromRGB(6, 18, 36) box.TextColor3 = Color3.fromRGB(255, 255, 255) box.Parent = parent local boxCorner = Instance.new("UICorner") boxCorner.CornerRadius = UDim.new(0, 4) boxCorner.Parent = box local boxStroke = Instance.new("UIStroke") boxStroke.Color = Color3.fromRGB(0, 200, 255) boxStroke.Thickness = 1.5 boxStroke.Parent = box local plusBtn = Instance.new("TextButton") plusBtn.Size = UDim2.new(0, 30, 0, 24) plusBtn.Position = UDim2.new(0, 225, 0, posY + 16) plusBtn.Text = "+" plusBtn.TextSize = 14 plusBtn.Font = Enum.Font.SourceSansBold plusBtn.BackgroundColor3 = Color3.fromRGB(10, 30, 60) plusBtn.TextColor3 = Color3.fromRGB(0, 245, 255) plusBtn.Parent = parent local pCorner = Instance.new("UICorner") pCorner.CornerRadius = UDim.new(0, 4) pCorner.Parent = plusBtn local pStroke = Instance.new("UIStroke") pStroke.Color = Color3.fromRGB(0, 180, 240) pStroke.Thickness = 1 pStroke.Parent = plusBtn minusBtn.MouseButton1Click:Connect(function() local val = tonumber(box.Text) or 0 box.Text = tostring(val - step) end) plusBtn.MouseButton1Click:Connect(function() local val = tonumber(box.Text) or 0 box.Text = tostring(val + step) end) return box end -- TAB 1 INPUTS local grabRadiusBox = createStepperInput(tab1, "Grab Radius (Auto-Obtain)", "100", 10, 10) local heightBox = createStepperInput(tab1, "Ring Height (Up/Down Offset)", "0", 55, 1) local lrDistBox = createStepperInput(tab1, "Left/Right Distance", "0", 100, 2) local distanceBox = createStepperInput(tab1, "Forward/Back Distance", "0", 145, 2) local radiusBox = createStepperInput(tab1, "Ring Radius (Size)", "15", 190, 2) local speedBox = createStepperInput(tab1, "Rotation Speed", "4", 235, 1) local rotXBox = createStepperInput(tab1, "Rotate X Angle", "90", 280, 15) local rotYBox = createStepperInput(tab1, "Rotate Y Angle", "0", 325, 15) local rotZBox = createStepperInput(tab1, "Rotate Z Angle", "0", 370, 15) -------------------------------------------------------------------------------- -- 5. TAB 2 PATTERNS & EXPLOITERS RING ENGINE -------------------------------------------------------------------------------- local selectedPattern = "Circle" local patternList = { "Circle", "Wall", "Floor", "Sphere", "Square", "Triangle", "Hands", "Arms", "Shield", "Infinity", "DNA", "Worm", "Tornado", "6 7 Ring", "Square Box Ring", "Tsunami Ring", "Laser Beam", "Box", "Tower" } local patternHeader = Instance.new("TextLabel") patternHeader.Size = UDim2.new(0, 240, 0, 20) patternHeader.Position = UDim2.new(0, 15, 0, 10) patternHeader.Text = "Pattern Mode: (Circle)" patternHeader.Font = Enum.Font.SourceSansBold patternHeader.TextColor3 = Color3.fromRGB(0, 245, 255) patternHeader.BackgroundTransparency = 1 patternHeader.TextXAlignment = Enum.TextXAlignment.Left patternHeader.Parent = tab2 local primeRingActivate for i, pName in ipairs(patternList) do local pBtn = Instance.new("TextButton") pBtn.Size = UDim2.new(0, 115, 0, 28) local row = math.floor((i - 1) / 2) local col = (i - 1) % 2 pBtn.Position = UDim2.new(0, 15 + (col * 125), 0, 35 + (row * 34)) pBtn.Text = pName pBtn.TextSize = 11 pBtn.Font = Enum.Font.SourceSansBold pBtn.BackgroundColor3 = Color3.fromRGB(10, 25, 50) pBtn.TextColor3 = Color3.fromRGB(255, 255, 255) pBtn.Parent = tab2 local pCorner = Instance.new("UICorner") pCorner.CornerRadius = UDim.new(0, 4) pCorner.Parent = pBtn local pStroke = Instance.new("UIStroke") pStroke.Color = Color3.fromRGB(0, 180, 240) pStroke.Thickness = 1 pStroke.Parent = pBtn pBtn.MouseButton1Click:Connect(function() selectedPattern = pName patternHeader.Text = "Pattern Mode: (" .. pName .. ")" if primeRingActivate then primeRingActivate(true) end end) end local controlsYStart = 35 + (math.ceil(#patternList / 2) * 34) + 10 local blockSpinEnabled = true local ringActive = false local spinBtn = Instance.new("TextButton") spinBtn.Name = "SpinButton" spinBtn.Size = UDim2.new(0, 240, 0, 30) spinBtn.Position = UDim2.new(0, 15, 0, controlsYStart) spinBtn.Text = "BLOCK SPIN: ON" spinBtn.TextSize = 10 spinBtn.Font = Enum.Font.SourceSansBold spinBtn.BackgroundColor3 = Color3.fromRGB(0, 140, 210) spinBtn.TextColor3 = Color3.fromRGB(255, 255, 255) spinBtn.Parent = tab2 local spinCorner = Instance.new("UICorner") spinCorner.CornerRadius = UDim.new(0, 6) spinCorner.Parent = spinBtn local mainActivateBtn = Instance.new("TextButton") mainActivateBtn.Name = "ActivateButton" mainActivateBtn.Size = UDim2.new(0, 240, 0, 34) mainActivateBtn.Position = UDim2.new(0, 15, 0, controlsYStart + 38) mainActivateBtn.Text = "ACTIVATE RING" mainActivateBtn.TextSize = 11 mainActivateBtn.Font = Enum.Font.SourceSansBold mainActivateBtn.BackgroundColor3 = Color3.fromRGB(0, 190, 110) mainActivateBtn.TextColor3 = Color3.fromRGB(255, 255, 255) mainActivateBtn.Parent = tab2 local actCorner = Instance.new("UICorner") actCorner.CornerRadius = UDim.new(0, 6) actCorner.Parent = mainActivateBtn local ringLoop = nil local grabbedParts = {} local grabbedPartsSet = {} local activeConstraints = {} local function isPlayerPart(object) local character = player.Character if character and object:IsDescendantOf(character) then return true elseif object.Parent and (object.Parent:FindFirstChildOfClass("Humanoid") or object.Parent:IsA("Accessory")) then return true end return false end local function addSinglePartToRing(part) if not part or not part:IsA("BasePart") or part.Anchored or isPlayerPart(part) then return end if part.Name == "Terrain" or part.Name == "Baseplate" then return end if grabbedPartsSet[part] then return end pcall(function() part:SetNetworkOwner(player) end) pcall(function() part:Wake() end) grabbedPartsSet[part] = true table.insert(grabbedParts, part) part.CanCollide = false part.CanTouch = true part.Massless = true part.CustomPhysicalProperties = PhysicalProperties.new(0.001, 0, 0, 0, 0) local char = player.Character if char then for _, charPart in ipairs(char:GetDescendants()) do if charPart:IsA("BasePart") then local nc = Instance.new("NoCollisionConstraint") nc.Part0 = part nc.Part1 = charPart nc.Parent = part table.insert(activeConstraints, nc) end end end end local function scanAndGrabNearbyParts(centerPos, radius) local instances = Workspace:GetDescendants() for i = 1, #instances do local object = instances[i] if object:IsA("BasePart") and not object.Anchored and not grabbedPartsSet[object] then if not isPlayerPart(object) and object.Name ~= "Terrain" and object.Name ~= "Baseplate" then local dist = (object.Position - centerPos).Magnitude if dist <= radius then addSinglePartToRing(object) end end end end end local function stopRing() if ringLoop then ringLoop:Disconnect() ringLoop = nil end for _, constraint in ipairs(activeConstraints) do if constraint and constraint.Parent then constraint:Destroy() end end activeConstraints = {} for _, part in ipairs(grabbedParts) do if part and part.Parent and not part.Anchored then part.CanCollide = true part.Massless = false part.CustomPhysicalProperties = nil end end grabbedParts = {} grabbedPartsSet = {} ringActive = false mainActivateBtn.Text = "ACTIVATE RING" mainActivateBtn.BackgroundColor3 = Color3.fromRGB(0, 190, 110) end local digit6Points = {{0, 2}, {1, 2}, {2, 2}, {0, 1}, {0, 0}, {1, 0}, {2, 0}, {0, -1}, {2, -1}, {0, -2}, {1, -2}, {2, -2}} local digit7Points = {{0, 2}, {1, 2}, {2, 2}, {2, 1}, {1, 0}, {1, -1}, {1, -2}} primeRingActivate = function(keepParts) local character = player.Character if not character then return end local root = character:FindFirstChild("HumanoidRootPart") if not root then return end playScriptIntro("Exploiters Ring (" .. selectedPattern .. ")") local maxGrabDist = tonumber(grabRadiusBox.Text) or 100 local rHeight = tonumber(heightBox.Text) or 0 local rLRDist = tonumber(lrDistBox.Text) or 0 local rDistance = tonumber(distanceBox.Text) or 0 local rRadius = tonumber(radiusBox.Text) or 15 local rSpeed = tonumber(speedBox.Text) or 4 local rx = tonumber(rotXBox.Text) or 90 local ry = tonumber(rotYBox.Text) or 0 local rz = tonumber(rotZBox.Text) or 0 if not keepParts or #grabbedParts == 0 then stopRing() scanAndGrabNearbyParts(root.Position, maxGrabDist) end if ringLoop then ringLoop:Disconnect() ringLoop = nil end ringActive = true mainActivateBtn.Text = "DEACTIVATE RING" mainActivateBtn.BackgroundColor3 = Color3.fromRGB(220, 40, 50) local startTime = os.clock() local lastScanTime = 0 local smoothedCenterCFrame = root.CFrame ringLoop = RunService.PreSimulation:Connect(function(deltaTime) if not root or not root.Parent then stopRing() return end local now = os.clock() local liveGrabRadius = tonumber(grabRadiusBox.Text) or maxGrabDist if now - lastScanTime > 0.2 then lastScanTime = now scanAndGrabNearbyParts(root.Position, liveGrabRadius) end smoothedCenterCFrame = smoothedCenterCFrame:Lerp(root.CFrame, math.clamp(deltaTime * 25, 0.1, 1)) local liveHeight = tonumber(heightBox.Text) or rHeight local liveLR = tonumber(lrDistBox.Text) or rLRDist local liveDistance = tonumber(distanceBox.Text) or rDistance local liveRadius = tonumber(radiusBox.Text) or rRadius local liveSpeed = tonumber(speedBox.Text) or rSpeed local liveRx = tonumber(rotXBox.Text) or rx local liveRy = tonumber(rotYBox.Text) or ry local liveRz = tonumber(rotZBox.Text) or rz local t = (now - startTime) * liveSpeed local pMode = string.lower(selectedPattern) local rotationCFrame = CFrame.Angles(math.rad(liveRx), math.rad(liveRy), math.rad(liveRz)) local numParts = #grabbedParts for i, part in ipairs(grabbedParts) do if part and part.Parent and not part.Anchored then part.CanCollide = false local angle = (i / math.max(numParts, 1)) * math.pi * 2 local offset = Vector3.zero if pMode == "circle" then offset = Vector3.new(math.cos(angle + t) * liveRadius + liveLR, liveHeight, math.sin(angle + t) * liveRadius - liveDistance) elseif pMode == "wall" then local gridWidth = math.ceil(math.sqrt(numParts)) local col = (i - 1) % gridWidth local row = math.floor((i - 1) / gridWidth) offset = Vector3.new((col - gridWidth / 2) * (liveRadius / 3) + liveLR, (row - gridWidth / 2) * (liveRadius / 3) + liveHeight, -liveDistance - 5) elseif pMode == "floor" then local gridWidth = math.ceil(math.sqrt(numParts)) local col = (i - 1) % gridWidth local row = math.floor((i - 1) / gridWidth) offset = Vector3.new((col - gridWidth / 2) * (liveRadius / 3) + liveLR, -3 + liveHeight, (row - gridWidth / 2) * (liveRadius / 3) - liveDistance) elseif pMode == "sphere" then local phi = math.acos(-1 + (2 * i) / math.max(numParts, 1)) local theta = math.sqrt(numParts * math.pi) * phi + t offset = Vector3.new(liveRadius * math.cos(theta) * math.sin(phi) + liveLR, liveRadius * math.sin(theta) * math.sin(phi) + liveHeight, liveRadius * math.cos(phi) - liveDistance) elseif pMode == "square" then local side = math.floor((i - 1) / (math.max(numParts, 1) / 4)) local progress = ((i - 1) % (math.max(numParts, 1) / 4)) / (math.max(numParts, 1) / 4) * 2 - 1 if side == 0 then offset = Vector3.new(progress * liveRadius + liveLR, liveHeight, liveRadius - liveDistance) elseif side == 1 then offset = Vector3.new(liveRadius + liveLR, liveHeight, -progress * liveRadius - liveDistance) elseif side == 2 then offset = Vector3.new(-progress * liveRadius + liveLR, liveHeight, -liveRadius - liveDistance) else offset = Vector3.new(-liveRadius + liveLR, liveHeight, progress * liveRadius - liveDistance) end elseif pMode == "triangle" then local side = math.floor((i - 1) / (math.max(numParts, 1) / 3)) local progress = ((i - 1) % (math.max(numParts, 1) / 3)) / (math.max(numParts, 1) / 3) local a1 = math.pi * 2 / 3 * side local a2 = math.pi * 2 / 3 * (side + 1) local p1 = Vector3.new(math.cos(a1) * liveRadius + liveLR, liveHeight, math.sin(a1) * liveRadius - liveDistance) local p2 = Vector3.new(math.cos(a2) * liveRadius + liveLR, liveHeight, math.sin(a2) * liveRadius - liveDistance) offset = p1:Lerp(p2, progress) elseif pMode == "6 7 ring" then local isDigit6 = (i % 2 == 1) local pointList = isDigit6 and digit6Points or digit7Points local ptIndex = math.floor((i - 1) / 2) % #pointList + 1 local pt = pointList[ptIndex] local xOffset = isDigit6 and (-liveRadius * 0.4) or (liveRadius * 0.4) offset = Vector3.new(xOffset + pt[1] * (liveRadius / 3.5) + liveLR, pt[2] * (liveRadius / 3.5) + liveHeight, -liveDistance - 4) else offset = Vector3.new(math.cos(angle + t) * liveRadius + liveLR, liveHeight, math.sin(angle + t) * liveRadius - liveDistance) end local targetCFrame = smoothedCenterCFrame * rotationCFrame * CFrame.new(offset) local velocityDelta = (targetCFrame.Position - part.Position) part.AssemblyLinearVelocity = root.AssemblyLinearVelocity + (velocityDelta * math.clamp(30 / (deltaTime * 60), 10, 80)) if blockSpinEnabled then part.AssemblyAngularVelocity = Vector3.new(0, liveSpeed * 4, 0) else part.AssemblyAngularVelocity = Vector3.zero end end end end) end spinBtn.MouseButton1Click:Connect(function() blockSpinEnabled = not blockSpinEnabled if blockSpinEnabled then spinBtn.Text = "BLOCK SPIN: ON" spinBtn.BackgroundColor3 = Color3.fromRGB(0, 140, 210) else spinBtn.Text = "BLOCK SPIN: OFF" spinBtn.BackgroundColor3 = Color3.fromRGB(180, 80, 0) end end) mainActivateBtn.MouseButton1Click:Connect(function() if ringActive then stopRing() else primeRingActivate(false) end end) -------------------------------------------------------------------------------- -- 6. INSTANT PLATFORM ENGINE & ANIMATED IRON MAN NANOBOTS -------------------------------------------------------------------------------- local function createUtilityBtn(parent, text, posY, callback) local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 240, 0, 32) btn.Position = UDim2.new(0, 15, 0, posY) btn.BackgroundColor3 = Color3.fromRGB(10, 30, 60) btn.Text = text btn.TextColor3 = Color3.fromRGB(0, 245, 255) btn.Font = Enum.Font.SourceSansBold btn.TextSize = 13 btn.Parent = parent local bCorner = Instance.new("UICorner") bCorner.CornerRadius = UDim.new(0, 6) bCorner.Parent = btn local bStroke = Instance.new("UIStroke") bStroke.Color = Color3.fromRGB(0, 180, 240) bStroke.Thickness = 1 bStroke.Parent = btn btn.MouseButton1Click:Connect(callback) return btn end local platformActive = false local platformMode = "Normal" -- "Normal", "MicroNanobots", "Everywhere20" local platform = nil local assembledParts = {} local targetY = nil local heightStep = 10 local platformWidth = 10 local platformHeight = 1 local isUpHolding = false local isDownHolding = false local function playMetalClashSound(position) local sound = Instance.new("Sound") sound.SoundId = "rbxassetid://603523533" sound.Volume = 1.8 sound.Pitch = math.random(90, 110) / 100 local soundPart = Instance.new("Part") soundPart.Size = Vector3.new(0.1, 0.1, 0.1) soundPart.Position = position soundPart.Anchored = true soundPart.Transparency = 1 soundPart.CanCollide = false soundPart.Parent = Workspace sound.Parent = soundPart sound:Play() task.delay(2, function() soundPart:Destroy() end) end local function destroyPlatform() platformActive = false if platform then platform:Destroy() platform = nil end for _, piece in ipairs(assembledParts) do if piece and piece.Parent then piece:Destroy() end end assembledParts = {} targetY = nil end local function spawnNormalPlatform(root) targetY = root.Position.Y - (3 + (platformHeight / 2)) platform = Instance.new("Part") platform.Name = "VisualPlatform" platform.Size = Vector3.new(platformWidth, platformHeight, platformWidth) platform.CFrame = CFrame.new(root.Position.X, targetY, root.Position.Z) platform.Anchored = true platform.CanCollide = true platform.Material = Enum.Material.Neon platform.Color = Color3.fromRGB(0, 170, 255) platform.Transparency = 0.2 platform.Parent = Workspace playMetalClashSound(platform.Position) end local function spawnMicroNanobotsPlatform(root) targetY = root.Position.Y - (3 + (platformHeight / 2)) -- Immediate invisible collision base spawned platform = Instance.new("Part") platform.Name = "VisualPlatform" platform.Size = Vector3.new(platformWidth, platformHeight, platformWidth) platform.CFrame = CFrame.new(root.Position.X, targetY, root.Position.Z) platform.Anchored = true platform.CanCollide = true platform.Material = Enum.Material.Neon platform.Color = Color3.fromRGB(0, 230, 255) platform.Transparency = 0.8 platform.Parent = Workspace local botCount = 80 local animTime = 0.8 -- Swarm Particle system streams upward live for i = 1, botCount do local nano = Instance.new("Part") nano.Size = Vector3.new(0.12, 0.12, 0.12) nano.Material = Enum.Material.Neon nano.Color = Color3.fromRGB(0, 255, 255) nano.Anchored = true nano.CanCollide = false local col = (i - 1) % 9 local row = math.floor((i - 1) / 9) local gridX = ((col / 8) - 0.5) * platformWidth local gridZ = ((row / 8) - 0.5) * platformWidth nano.CFrame = CFrame.new(root.Position) nano.Parent = Workspace table.insert(assembledParts, nano) task.spawn(function() local elapsed = 0 local spawnOffset = (i / botCount) * 0.2 task.wait(spawnOffset) while elapsed < animTime and platformActive do local dt = RunService.RenderStepped:Wait() elapsed = elapsed + dt local prog = math.clamp(elapsed / animTime, 0, 1) if root and root.Parent then local footPos = root.Position - Vector3.new(0, 3, 0) local targetPos = Vector3.new(root.Position.X + gridX, targetY, root.Position.Z + gridZ) -- Swirling stream up into floor grid local angle = prog * math.pi * 8 + i local r = (1 - prog) * 2.5 local px = footPos.X + (targetPos.X - footPos.X) * prog + math.cos(angle) * r local py = footPos.Y + (targetPos.Y - footPos.Y) * prog local pz = footPos.Z + (targetPos.Z - footPos.Z) * prog + math.sin(angle) * r nano.CFrame = CFrame.new(Vector3.new(px, py, pz)) end end if nano and nano.Parent then nano.Transparency = 1 end end) end task.delay(animTime + 0.2, function() if platformActive and platform then platform.Transparency = 0.2 playMetalClashSound(platform.Position) for _, n in ipairs(assembledParts) do if n and n.Parent then n:Destroy() end end assembledParts = {} end end) end local function spawn20EverywherePlatform(root) targetY = root.Position.Y - (3 + (platformHeight / 2)) platform = Instance.new("Part") platform.Name = "VisualPlatform" platform.Size = Vector3.new(platformWidth, platformHeight, platformWidth) platform.CFrame = CFrame.new(root.Position.X, targetY, root.Position.Z) platform.Anchored = true platform.CanCollide = false platform.Material = Enum.Material.Neon platform.Color = Color3.fromRGB(0, 170, 255) platform.Transparency = 1 platform.Parent = Workspace local pieceCount = 20 local finishedCount = 0 for i = 1, pieceCount do local piece = Instance.new("Part") piece.Size = Vector3.new(platformWidth / 5, platformHeight, platformWidth / 4) piece.Material = Enum.Material.Metal piece.Color = Color3.fromRGB(30, 40, 50) piece.Anchored = true piece.CanCollide = false local fire = Instance.new("Fire") fire.Size = 6 fire.Heat = 12 fire.SecondaryColor = Color3.fromRGB(0, 220, 255) fire.Parent = piece local smoke = Instance.new("Smoke") smoke.Size = 2 smoke.RiseVelocity = 5 smoke.Color = Color3.fromRGB(100, 100, 100) smoke.Parent = piece local spawnDist = math.random(70, 120) local phi = math.random() * math.pi * 2 local theta = math.random() * math.pi local startPos = root.Position + Vector3.new( spawnDist * math.sin(theta) * math.cos(phi), math.random(20, 80), spawnDist * math.sin(theta) * math.sin(phi) ) piece.CFrame = CFrame.new(startPos) piece.Parent = Workspace table.insert(assembledParts, piece) task.spawn(function() local duration = 0.8 + (math.random() * 0.2) local elapsed = 0 local randomSpinAxis = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)).Unit while elapsed < duration and platformActive do local dt = RunService.RenderStepped:Wait() elapsed = elapsed + dt local progress = math.clamp(elapsed / duration, 0, 1) if root and root.Parent then local col = (i - 1) % 4 local row = math.floor((i - 1) / 4) local gridX = (col - 1.5) * (platformWidth / 4) local gridZ = (row - 2) * (platformWidth / 5) local targetPos = Vector3.new(root.Position.X + gridX, targetY, root.Position.Z + gridZ) local currentPos = startPos:Lerp(targetPos, TweenService:GetValue(progress, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out)) local spinAngle = (1 - progress) * math.pi * 8 piece.CFrame = CFrame.new(currentPos) * CFrame.fromAxisAngle(randomSpinAxis, spinAngle) end end if platformActive and piece and piece.Parent then fire:Destroy() smoke:Destroy() finishedCount = finishedCount + 1 if finishedCount == pieceCount then playMetalClashSound(platform.Position) if platform then platform.CanCollide = true platform.Transparency = 0.2 end for _, p in ipairs(assembledParts) do if p and p.Parent then p:Destroy() end end assembledParts = {} end end end) end end local function createPlatform() local character = player.Character if not character or not character:FindFirstChild("HumanoidRootPart") then return end destroyPlatform() platformActive = true local root = character.HumanoidRootPart if platformMode == "Normal" then spawnNormalPlatform(root) elseif platformMode == "MicroNanobots" then spawnMicroNanobotsPlatform(root) elseif platformMode == "Everywhere20" then spawn20EverywherePlatform(root) end end -- Platform Controls Panel inside Tab 3 local platformGroup = Instance.new("Frame") platformGroup.Size = UDim2.new(0, 240, 0, 260) platformGroup.Position = UDim2.new(0, 15, 0, 10) platformGroup.BackgroundColor3 = Color3.fromRGB(6, 18, 36) platformGroup.Parent = tab3 local pGroupCorner = Instance.new("UICorner") pGroupCorner.CornerRadius = UDim.new(0, 6) pGroupCorner.Parent = platformGroup local modeBtn = Instance.new("TextButton") modeBtn.Size = UDim2.new(0, 220, 0, 26) modeBtn.Position = UDim2.new(0, 10, 0, 10) modeBtn.BackgroundColor3 = Color3.fromRGB(15, 30, 60) modeBtn.BorderColor3 = Color3.fromRGB(0, 180, 240) modeBtn.Text = "MODE: NORMAL INSTANT" modeBtn.TextColor3 = Color3.fromRGB(0, 245, 255) modeBtn.Font = Enum.Font.GothamBold modeBtn.TextSize = 10 modeBtn.Parent = platformGroup modeBtn.MouseButton1Click:Connect(function() if platformMode == "Normal" then platformMode = "MicroNanobots" modeBtn.Text = "MODE: IRON MAN NANOBOTS" modeBtn.TextColor3 = Color3.fromRGB(0, 255, 180) elseif platformMode == "MicroNanobots" then platformMode = "Everywhere20" modeBtn.Text = "MODE: 20-PIECE FIRE/SPIN" modeBtn.TextColor3 = Color3.fromRGB(255, 200, 0) else platformMode = "Normal" modeBtn.Text = "MODE: NORMAL INSTANT" modeBtn.TextColor3 = Color3.fromRGB(0, 245, 255) end end) local togglePlatformBtn = Instance.new("TextButton") togglePlatformBtn.Size = UDim2.new(0, 220, 0, 30) togglePlatformBtn.Position = UDim2.new(0, 10, 0, 42) togglePlatformBtn.BackgroundColor3 = Color3.fromRGB(20, 35, 60) togglePlatformBtn.BorderColor3 = Color3.fromRGB(0, 170, 255) togglePlatformBtn.Text = "ACTIVATE PLATFORM" togglePlatformBtn.TextColor3 = Color3.fromRGB(255, 255, 255) togglePlatformBtn.Font = Enum.Font.GothamBold togglePlatformBtn.TextSize = 11 togglePlatformBtn.Parent = platformGroup togglePlatformBtn.MouseButton1Click:Connect(function() if platformActive then destroyPlatform() togglePlatformBtn.Text = "ACTIVATE PLATFORM" togglePlatformBtn.TextColor3 = Color3.fromRGB(255, 255, 255) else playScriptIntro("Platform (" .. platformMode .. ")") createPlatform() togglePlatformBtn.Text = "DEACTIVATE PLATFORM" togglePlatformBtn.TextColor3 = Color3.fromRGB(255, 80, 80) end end) local upBtn = Instance.new("TextButton") upBtn.Size = UDim2.new(0, 105, 0, 30) upBtn.Position = UDim2.new(0, 10, 0, 78) upBtn.BackgroundColor3 = Color3.fromRGB(20, 35, 60) upBtn.BorderColor3 = Color3.fromRGB(0, 170, 255) upBtn.Text = "UP ▲" upBtn.TextColor3 = Color3.fromRGB(0, 200, 255) upBtn.Font = Enum.Font.GothamBold upBtn.TextSize = 12 upBtn.Parent = platformGroup local downBtn = Instance.new("TextButton") downBtn.Size = UDim2.new(0, 105, 0, 30) downBtn.Position = UDim2.new(0, 125, 0, 78) downBtn.BackgroundColor3 = Color3.fromRGB(20, 35, 60) downBtn.BorderColor3 = Color3.fromRGB(0, 170, 255) downBtn.Text = "DOWN ▼" downBtn.TextColor3 = Color3.fromRGB(0, 200, 255) downBtn.Font = Enum.Font.GothamBold downBtn.TextSize = 12 downBtn.Parent = platformGroup upBtn.MouseButton1Down:Connect(function() isUpHolding = true if targetY then targetY = targetY + heightStep end end) upBtn.MouseButton1Up:Connect(function() isUpHolding = false end) upBtn.MouseLeave:Connect(function() isUpHolding = false end) downBtn.MouseButton1Down:Connect(function() isDownHolding = true if targetY then targetY = targetY - heightStep end end) downBtn.MouseButton1Up:Connect(function() isDownHolding = false end) downBtn.MouseLeave:Connect(function() isDownHolding = false end) local heightInput = Instance.new("TextBox") heightInput.Size = UDim2.new(0, 220, 0, 26) heightInput.Position = UDim2.new(0, 10, 0, 116) heightInput.BackgroundColor3 = Color3.fromRGB(15, 25, 45) heightInput.BorderColor3 = Color3.fromRGB(0, 170, 255) heightInput.PlaceholderText = "Step Height (Default: 10)" heightInput.Text = "10" heightInput.TextColor3 = Color3.fromRGB(255, 255, 255) heightInput.Font = Enum.Font.Gotham heightInput.TextSize = 11 heightInput.Parent = platformGroup local widthInput = Instance.new("TextBox") widthInput.Size = UDim2.new(0, 220, 0, 26) widthInput.Position = UDim2.new(0, 10, 0, 148) widthInput.BackgroundColor3 = Color3.fromRGB(15, 25, 45) widthInput.BorderColor3 = Color3.fromRGB(0, 170, 255) widthInput.PlaceholderText = "Platform Width (Default: 10)" widthInput.Text = "10" widthInput.TextColor3 = Color3.fromRGB(255, 255, 255) widthInput.Font = Enum.Font.Gotham widthInput.TextSize = 11 widthInput.Parent = platformGroup local pHeightInput = Instance.new("TextBox") pHeightInput.Size = UDim2.new(0, 220, 0, 26) pHeightInput.Position = UDim2.new(0, 10, 0, 180) pHeightInput.BackgroundColor3 = Color3.fromRGB(15, 25, 45) pHeightInput.BorderColor3 = Color3.fromRGB(0, 170, 255) pHeightInput.PlaceholderText = "Platform Thickness (Default: 1)" pHeightInput.Text = "1" pHeightInput.TextColor3 = Color3.fromRGB(255, 255, 255) pHeightInput.Font = Enum.Font.Gotham pHeightInput.TextSize = 11 pHeightInput.Parent = platformGroup heightInput.FocusLost:Connect(function() local val = tonumber(heightInput.Text) if val and val > 0 then heightStep = val else heightInput.Text = tostring(heightStep) end end) widthInput.FocusLost:Connect(function() local val = tonumber(widthInput.Text) if val and val > 0 then platformWidth = val if platform then platform.Size = Vector3.new(platformWidth, platformHeight, platformWidth) end else widthInput.Text = tostring(platformWidth) end end) pHeightInput.FocusLost:Connect(function() local val = tonumber(pHeightInput.Text) if val and val > 0 then platformHeight = val if platform then platform.Size = Vector3.new(platformWidth, platformHeight, platformWidth) end else pHeightInput.Text = tostring(platformHeight) end end) RunService.RenderStepped:Connect(function(deltaTime) if not platformActive or not platform or not player.Character then return end local root = player.Character:FindFirstChild("HumanoidRootPart") if not root then return end if isUpHolding then targetY = targetY + (heightStep * deltaTime * 2) elseif isDownHolding then targetY = targetY - (heightStep * deltaTime * 2) end local currentPos = platform.Position local targetPos = Vector3.new(root.Position.X, targetY, root.Position.Z) platform.CFrame = CFrame.new(currentPos:Lerp(targetPos, 0.8)) end) player.CharacterRemoving:Connect(function() destroyPlatform() end) -------------------------------------------------------------------------------- -- INTEGRATED ADVANCED TELEKINESIS ENGINE -------------------------------------------------------------------------------- local grabDistance = 60 local holdDistance = 10 local throwSpeed = 150 local teleHeldPart = nil local originalCanCollide = true local teleRenderConnection = nil local holdAttachment = nil local partAttachment = nil local alignPosition = nil local alignOrientation = nil local function isCharacterPart(part) if not part or not part:IsA("BasePart") then return true end if part:IsA("Terrain") then return true end for _, p in ipairs(Players:GetPlayers()) do if p.Character and part:IsDescendantOf(p.Character) then return true end end return false end local function getTargetedPart() local char = player.Character if not char or not char:FindFirstChild("HumanoidRootPart") then return nil end local camCFrame = camera.CFrame local camPos = camCFrame.Position local camLook = camCFrame.LookVector local closestPart = nil local closestDist = grabDistance for _, obj in ipairs(Workspace:GetDescendants()) do if obj:IsA("BasePart") and not obj.Anchored and not isCharacterPart(obj) then if not obj.Parent:FindFirstChildOfClass("Humanoid") then local toPart = obj.Position - camPos local dist = toPart.Magnitude if dist <= grabDistance then local dotProduct = camLook:Dot(toPart.Unit) if dotProduct > 0.3 then if dist < closestDist then closestDist = dist closestPart = obj end end end end end end return closestPart end local function cleanupPhysics() if teleRenderConnection then teleRenderConnection:Disconnect() teleRenderConnection = nil end if alignPosition then alignPosition:Destroy() alignPosition = nil end if alignOrientation then alignOrientation:Destroy() alignOrientation = nil end if holdAttachment then holdAttachment:Destroy() holdAttachment = nil end if partAttachment then partAttachment:Destroy() partAttachment = nil end end local releasePart local function grabPart(part) teleHeldPart = part originalCanCollide = part.CanCollide part.CanCollide = false pcall(function() part:SetNetworkOwner(player) end) holdAttachment = Instance.new("Attachment") holdAttachment.Parent = Workspace.Terrain partAttachment = Instance.new("Attachment") partAttachment.Parent = part alignPosition = Instance.new("AlignPosition") alignPosition.Mode = Enum.PositionAlignmentMode.TwoAttachment alignPosition.Attachment0 = partAttachment alignPosition.Attachment1 = holdAttachment alignPosition.MaxForce = 50000 alignPosition.MaxVelocity = 150 alignPosition.Responsiveness = 40 alignPosition.Parent = part alignOrientation = Instance.new("AlignOrientation") alignOrientation.Mode = Enum.OrientationAlignmentMode.TwoAttachment alignOrientation.Attachment0 = partAttachment alignOrientation.Attachment1 = holdAttachment alignOrientation.MaxTorque = 50000 alignOrientation.Responsiveness = 40 alignOrientation.Parent = part teleRenderConnection = RunService.RenderStepped:Connect(function() if teleHeldPart and teleHeldPart.Parent and not teleHeldPart.Anchored and not isCharacterPart(teleHeldPart) then if teleHeldPart.Material == Enum.Material.Water or teleHeldPart.Position.Y < Workspace.FallenPartsDestroyHeight then releasePart(false) return end local targetCFrame = camera.CFrame * CFrame.new(0, 0, -holdDistance) holdAttachment.WorldCFrame = targetCFrame else releasePart(false) end end) end releasePart = function(shouldThrow) cleanupPhysics() if teleHeldPart and teleHeldPart.Parent then teleHeldPart.CanCollide = originalCanCollide if shouldThrow then local throwDirection = camera.CFrame.LookVector teleHeldPart.AssemblyLinearVelocity = throwDirection * throwSpeed teleHeldPart.AssemblyAngularVelocity = Vector3.new( math.random(-20, 20), math.random(-20, 20), math.random(-20, 20) ) end end teleHeldPart = nil end -- Telekinesis Menu Panel inside Tab 3 local teleGroup = Instance.new("Frame") teleGroup.Size = UDim2.new(0, 240, 0, 180) teleGroup.Position = UDim2.new(0, 15, 0, 280) teleGroup.BackgroundColor3 = Color3.fromRGB(6, 18, 36) teleGroup.Parent = tab3 local tGroupCorner = Instance.new("UICorner") tGroupCorner.CornerRadius = UDim.new(0, 6) tGroupCorner.Parent = teleGroup local grabBtn = Instance.new("TextButton") grabBtn.Size = UDim2.new(0, 220, 0, 36) grabBtn.Position = UDim2.new(0, 10, 0, 10) grabBtn.BackgroundColor3 = Color3.fromRGB(0, 170, 255) grabBtn.Text = "GRAB / THROW PART" grabBtn.TextColor3 = Color3.fromRGB(255, 255, 255) grabBtn.Font = Enum.Font.GothamBold grabBtn.TextSize = 12 grabBtn.Parent = teleGroup local grabCorner = Instance.new("UICorner") grabCorner.CornerRadius = UDim.new(0, 6) grabCorner.Parent = grabBtn grabBtn.MouseButton1Click:Connect(function() if not teleHeldPart then local p = getTargetedPart() if p then grabPart(p) grabBtn.Text = "THROW PART!" grabBtn.BackgroundColor3 = Color3.fromRGB(255, 40, 40) end else releasePart(true) grabBtn.Text = "GRAB / THROW PART" grabBtn.BackgroundColor3 = Color3.fromRGB(0, 170, 255) end end) local speedLabel = Instance.new("TextLabel") speedLabel.Size = UDim2.new(1, 0, 0, 16) speedLabel.Position = UDim2.new(0, 0, 0, 52) speedLabel.BackgroundTransparency = 1 speedLabel.Text = "Throw Speed: " .. throwSpeed speedLabel.TextColor3 = Color3.fromRGB(0, 230, 255) speedLabel.Font = Enum.Font.Gotham speedLabel.TextSize = 11 speedLabel.Parent = teleGroup local speedMinus = Instance.new("TextButton") speedMinus.Size = UDim2.new(0, 105, 0, 26) speedMinus.Position = UDim2.new(0, 10, 0, 72) speedMinus.BackgroundColor3 = Color3.fromRGB(15, 30, 55) speedMinus.Text = "- 25 Speed" speedMinus.TextColor3 = Color3.fromRGB(255, 255, 255) speedMinus.Font = Enum.Font.GothamBold speedMinus.TextSize = 10 speedMinus.Parent = teleGroup local speedPlus = Instance.new("TextButton") speedPlus.Size = UDim2.new(0, 105, 0, 26) speedPlus.Position = UDim2.new(0, 125, 0, 72) speedPlus.BackgroundColor3 = Color3.fromRGB(15, 30, 55) speedPlus.Text = "+ 25 Speed" speedPlus.TextColor3 = Color3.fromRGB(255, 255, 255) speedPlus.Font = Enum.Font.GothamBold speedPlus.TextSize = 10 speedPlus.Parent = teleGroup speedMinus.MouseButton1Click:Connect(function() throwSpeed = math.max(25, throwSpeed - 25) speedLabel.Text = "Throw Speed: " .. throwSpeed end) speedPlus.MouseButton1Click:Connect(function() throwSpeed = math.min(1000, throwSpeed + 25) speedLabel.Text = "Throw Speed: " .. throwSpeed end) local distLabel = Instance.new("TextLabel") distLabel.Size = UDim2.new(1, 0, 0, 16) distLabel.Position = UDim2.new(0, 0, 0, 106) distLabel.BackgroundTransparency = 1 distLabel.Text = "Hold Distance: " .. holdDistance distLabel.TextColor3 = Color3.fromRGB(0, 230, 255) distLabel.Font = Enum.Font.Gotham distLabel.TextSize = 11 distLabel.Parent = teleGroup local distMinus = Instance.new("TextButton") distMinus.Size = UDim2.new(0, 105, 0, 26) distMinus.Position = UDim2.new(0, 10, 0, 126) distMinus.BackgroundColor3 = Color3.fromRGB(15, 30, 55) distMinus.Text = "Closer (-)" distMinus.TextColor3 = Color3.fromRGB(255, 255, 255) distMinus.Font = Enum.Font.GothamBold distMinus.TextSize = 10 distMinus.Parent = teleGroup local distPlus = Instance.new("TextButton") distPlus.Size = UDim2.new(0, 105, 0, 26) distPlus.Position = UDim2.new(0, 125, 0, 126) distPlus.BackgroundColor3 = Color3.fromRGB(15, 30, 55) distPlus.Text = "Farther (+)" distPlus.TextColor3 = Color3.fromRGB(255, 255, 255) distPlus.Font = Enum.Font.GothamBold distPlus.TextSize = 10 distPlus.Parent = teleGroup distMinus.MouseButton1Click:Connect(function() holdDistance = math.max(3, holdDistance - 2) distLabel.Text = "Hold Distance: " .. holdDistance end) distPlus.MouseButton1Click:Connect(function() holdDistance = math.min(60, holdDistance + 2) distLabel.Text = "Hold Distance: " .. holdDistance end) -------------------------------------------------------------------------------- -- NEON CROSSHAIR UTILITY -------------------------------------------------------------------------------- createUtilityBtn(tab3, "Toggle Neon Crosshair", 470, function() playScriptIntro("Neon Crosshair") local oldX = playerGui:FindFirstChild("PrimeCrosshairGui") if oldX then oldX:Destroy() else local xGui = Instance.new("ScreenGui") xGui.Name = "PrimeCrosshairGui" xGui.ResetOnSpawn = false xGui.Parent = playerGui local center = Instance.new("Frame") center.Size = UDim2.new(0, 4, 0, 4) center.Position = UDim2.new(0.5, -2, 0.5, -2) center.BackgroundColor3 = Color3.fromRGB(0, 220, 255) center.BorderSizePixel = 0 center.Parent = xGui local top = Instance.new("Frame") top.Size = UDim2.new(0, 2, 0, 12) top.Position = UDim2.new(0.5, -1, 0.5, -16) top.BackgroundColor3 = Color3.fromRGB(0, 220, 255) top.BorderSizePixel = 0 top.Parent = xGui local bot = Instance.new("Frame") bot.Size = UDim2.new(0, 2, 0, 12) bot.Position = UDim2.new(0.5, -1, 0.5, 4) bot.BackgroundColor3 = Color3.fromRGB(0, 220, 255) bot.BorderSizePixel = 0 bot.Parent = xGui local left = Instance.new("Frame") left.Size = UDim2.new(0, 12, 0, 2) left.Position = UDim2.new(0.5, -16, 0.5, -1) left.BackgroundColor3 = Color3.fromRGB(0, 220, 255) left.BorderSizePixel = 0 left.Parent = xGui local right = Instance.new("Frame") right.Size = UDim2.new(0, 12, 0, 2) right.Position = UDim2.new(0.5, 4, 0.5, -1) right.BackgroundColor3 = Color3.fromRGB(0, 220, 255) right.BorderSizePixel = 0 right.Parent = xGui end end)