
- Keyless
- Mobile untested

Advertisement
Advertisement
-- ☠ TOXIC HUB V5
-- Original V4 features + Auto Roll controls
-- Auto Roll UI is ready; game-specific roll integration is not included.
local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local PURPLE = Color3.fromRGB(160, 40, 255)
local DARK = Color3.fromRGB(18, 12, 28)
local infiniteJump = false
local noclipEnabled = false
local autoRollEnabled = false
local jumpConnection
local noclipConnection
local inventoryGui
local savedCollisions = {}
local function make(class, props, parent)
local obj = Instance.new(class)
for key, value in pairs(props) do
obj[key] = value
end
obj.Parent = parent
return obj
end
-- GUI
local gui = make("ScreenGui", {
Name = "TOXIC_HUB_V5",
ResetOnSpawn = false
}, playerGui)
local frame = make("Frame", {
Size = UDim2.fromOffset(300, 630),
Position = UDim2.new(0.04, 0, 0.08, 0),
BackgroundColor3 = DARK,
BorderSizePixel = 0
}, gui)
make("UICorner", {CornerRadius = UDim.new(0, 14)}, frame)
make("UIStroke", {Color = PURPLE, Thickness = 2}, frame)
local title = make("TextLabel", {
Size = UDim2.new(1, -100, 0, 44),
Position = UDim2.fromOffset(10, 0),
BackgroundTransparency = 1,
Text = "☠ TOXIC HUB V5",
TextColor3 = Color3.new(1, 1, 1),
TextScaled = true,
Font = Enum.Font.GothamBold,
TextXAlignment = Enum.TextXAlignment.Left
}, frame)
local minimize = make("TextButton", {
Size = UDim2.fromOffset(32, 30),
Position = UDim2.new(1, -74, 0, 7),
Text = "_",
TextScaled = true,
TextColor3 = Color3.new(1, 1, 1),
BackgroundColor3 = Color3.fromRGB(70, 35, 100)
}, frame)
local close = make("TextButton", {
Size = UDim2.fromOffset(32, 30),
Position = UDim2.new(1, -37, 0, 7),
Text = "X",
TextScaled = true,
TextColor3 = Color3.new(1, 1, 1),
BackgroundColor3 = Color3.fromRGB(180, 35, 65)
}, frame)
local reopen = make("TextButton", {
Size = UDim2.fromOffset(115, 42),
Position = UDim2.new(0, 12, 0.5, 0),
Text = "☠ TOXIC",
TextScaled = true,
TextColor3 = Color3.new(1, 1, 1),
BackgroundColor3 = PURPLE,
Visible = false
}, gui)
make("UICorner", {CornerRadius = UDim.new(0, 10)}, reopen)
local status = make("TextLabel", {
Size = UDim2.new(1, -20, 0, 27),
Position = UDim2.fromOffset(10, 43),
BackgroundTransparency = 1,
Text = "STATUS: READY",
TextColor3 = Color3.fromRGB(210, 160, 255),
TextScaled = true,
Font = Enum.Font.GothamBold
}, frame)
local function newButton(text, y)
local button = make("TextButton", {
Size = UDim2.new(1, -20, 0, 39),
Position = UDim2.fromOffset(10, y),
Text = text,
TextColor3 = Color3.new(1, 1, 1),
TextScaled = true,
Font = Enum.Font.GothamBold,
BackgroundColor3 = Color3.fromRGB(65, 25, 100)
}, frame)
make("UICorner", {CornerRadius = UDim.new(0, 9)}, button)
make("UIStroke", {Color = PURPLE, Thickness = 1}, button)
return button
end
local speedButton = newButton("⚡ SPEED +10", 76)
local resetSpeed = newButton("↺ RESET SPEED (16)", 119)
local jumpButton = newButton("🦘 INFINITE JUMP: OFF", 162)
local stopJump = newButton("🛑 STOP INFINITE JUMP", 205)
local lookButton = newButton("👀 INVENTORY DEMO", 248)
local stopLook = newButton("✋ CLOSE INVENTORY", 291)
local noclipButton = newButton("👻 NOCLIP: OFF", 334)
local stopNoclipButton = newButton("🛑 STOP NOCLIP", 377)
local autoRollButton = newButton("🎲 AUTO ROLL: OFF", 420)
local stopAutoRollButton = newButton("🛑 STOP AUTO ROLL", 463)
local function getCharacter()
return player.Character
end
local function getHumanoid()
local character = getCharacter()
return character and character:FindFirstChildOfClass("Humanoid")
end
-- SPEED
speedButton.Activated:Connect(function()
local humanoid = getHumanoid()
if humanoid then
humanoid.WalkSpeed += 10
status.Text = "SPEED: " .. humanoid.WalkSpeed
else
status.Text = "CHARACTER NOT READY"
end
end)
resetSpeed.Activated:Connect(function()
local humanoid = getHumanoid()
if humanoid then
humanoid.WalkSpeed = 16
end
status.Text = "SPEED RESET TO 16"
end)
-- INFINITE JUMP
local function stopJumping()
infiniteJump = false
if jumpConnection then
jumpConnection:Disconnect()
jumpConnection = nil
end
jumpButton.Text = "🦘 INFINITE JUMP: OFF"
status.Text = "INFINITE JUMP STOPPED"
end
jumpButton.Activated:Connect(function()
if infiniteJump then
stopJumping()
return
end
infiniteJump = true
jumpButton.Text = "🦘 INFINITE JUMP: ON"
status.Text = "INFINITE JUMP ENABLED"
jumpConnection = UIS.JumpRequest:Connect(function()
if infiniteJump then
local humanoid = getHumanoid()
if humanoid then
humanoid:ChangeState(
Enum.HumanoidStateType.Jumping
)
end
end
end)
end)
stopJump.Activated:Connect(stopJumping)
-- INVENTORY DEMO
local function closeInventory()
if inventoryGui then
inventoryGui:Destroy()
inventoryGui = nil
end
end
lookButton.Activated:Connect(function()
closeInventory()
inventoryGui = make("Frame", {
Size = UDim2.fromOffset(260, 180),
Position = UDim2.new(0.5, -130, 0.5, -90),
BackgroundColor3 = DARK,
BorderSizePixel = 0
}, gui)
make("UICorner", {CornerRadius = UDim.new(0, 12)}, inventoryGui)
make("UIStroke", {Color = PURPLE, Thickness = 2}, inventoryGui)
make("TextLabel", {
Size = UDim2.new(1, 0, 0, 42),
BackgroundColor3 = PURPLE,
Text = "INVENTORY DEMO",
TextColor3 = Color3.new(1, 1, 1),
TextScaled = true,
Font = Enum.Font.GothamBold
}, inventoryGui)
make("TextLabel", {
Size = UDim2.new(1, -20, 1, -55),
Position = UDim2.fromOffset(10, 48),
BackgroundTransparency = 1,
Text = "Connect your own game's inventory data here.",
TextWrapped = true,
TextColor3 = Color3.new(1, 1, 1),
TextScaled = true
}, inventoryGui)
status.Text = "INVENTORY DEMO OPEN"
end)
stopLook.Activated:Connect(function()
closeInventory()
status.Text = "INVENTORY CLOSED"
end)
-- NOCLIP
local function setNoclip(enabled)
local character = getCharacter()
if not character then
status.Text = "CHARACTER NOT READY"
return
end
noclipEnabled = enabled
if enabled then
savedCollisions = {}
local function updatePart(part)
if part:IsA("BasePart") then
if savedCollisions[part] == nil then
savedCollisions[part] = part.CanCollide
end
part.CanCollide = false
end
end
for _, part in ipairs(character:GetDescendants()) do
updatePart(part)
end
if noclipConnection then
noclipConnection:Disconnect()
end
noclipConnection = character.DescendantAdded:Connect(updatePart)
noclipButton.Text = "👻 NOCLIP: ON"
status.Text = "NOCLIP ENABLED"
else
if noclipConnection then
noclipConnection:Disconnect()
noclipConnection = nil
end
for part, originalValue in pairs(savedCollisions) do
if part and part.Parent then
part.CanCollide = originalValue
end
end
savedCollisions = {}
noclipButton.Text = "👻 NOCLIP: OFF"
status.Text = "NOCLIP STOPPED"
end
end
noclipButton.Activated:Connect(function()
setNoclip(true)
end)
stopNoclipButton.Activated:Connect(function()
setNoclip(false)
end)
-- AUTO ROLL UI CONTROLS
-- These toggle the feature state; they do not trigger
-- another game's private roll machine.
autoRollButton.Activated:Connect(function()
autoRollEnabled = true
autoRollButton.Text = "🎲 AUTO ROLL: ON"
status.Text = "AUTO ROLL ON - INTERACTION NEEDED"
end)
stopAutoRollButton.Activated:Connect(function()
autoRollEnabled = false
autoRollButton.Text = "🎲 AUTO ROLL: OFF"
status.Text = "AUTO ROLL STOPPED"
end)
-- RESPAWN CLEANUP
player.CharacterAdded:Connect(function()
if noclipConnection then
noclipConnection:Disconnect()
noclipConnection = nil
end
savedCollisions = {}
noclipEnabled = false
noclipButton.Text = "👻 NOCLIP: OFF"
end)
-- MINIMIZE / CLOSE / REOPEN
minimize.Activated:Connect(function()
frame.Visible = false
reopen.Visible = true
end)
close.Activated:Connect(function()
stopJumping()
setNoclip(false)
closeInventory()
autoRollEnabled = false
autoRollButton.Text = "🎲 AUTO ROLL: OFF"
frame.Visible = false
reopen.Visible = true
end)
reopen.Activated:Connect(function()
frame.Visible = true
reopen.Visible = false
end)
-- DRAG WITH TOUCH OR MOUSE
local dragging = false
local dragStart
local startPosition
title.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1
or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPosition = frame.Position
end
end)
UIS.InputChanged:Connect(function(input)
if dragging and (
input.UserInputType == Enum.UserInputType.MouseMovement
or input.UserInputType == Enum.UserInputType.Touch
) then
local delta = input.Position - dragStart
frame.Position = UDim2.new(
startPosition.X.Scale,
startPosition.X.Offset + delta.X,
startPosition.Y.Scale,
startPosition.Y.Offset + delta.Y
)
end
end)
UIS.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1
or input.UserInputType == Enum.UserInputType.Touch then
dragging = false
end
end)
Tap a chip for community notes
Share what works, ask questions, or report an issue.
No comments yet. Be the first to share your experience with this script.
RexzzzMALAM SAMA NENEK
Advertisement
10 lines · 463 B