CCCPaste

Muscle Legends Script

-- Muscle Legends Script with Rayfield UI
-- Load Rayfield UI Library
local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))()

-- Variables
local Players = game:Services.Players
local LocalPlayer = Players.LocalPlayer
local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local RunService = game:GetService("RunService")

-- Settings
local Settings = {
    AutoBench = false,
    AutoWeight = false,
    AutoKill = false,
    AutoKillAll = false,
    TargetPlayer = "",
    FastRebirth = false,
    FastGrind = false,
    SpeedGrind = false,
    FastStrength = false,
    WalkSpeed = 16,
    JumpPower = 50
}

-- Create Window
local Window = Rayfield:CreateWindow({
    Name = "Muscle Legends | Script Hub",
    LoadingTitle = "Muscle Legends Script",
    LoadingSubtitle = "by Script Hub",
    ConfigurationSaving = {
        Enabled = true,
        FolderName = "MuscleLegends",
        FileName = "MLConfig"
    },
    Discord = {
        Enabled = false,
        Invite = "noinvitelink",
        RememberJoins = true
    },
    KeySystem = false
})

-- Main Tab
local MainTab = Window:CreateTab("🏋️ Main", 4483362458)

local MainSection = MainTab:CreateSection("Auto Farm")

local AutoBenchToggle = MainTab:CreateToggle({
    Name = "Auto Bench Press",
    CurrentValue = false,
    Flag = "AutoBench",
    Callback = function(Value)
        Settings.AutoBench = Value
        while Settings.AutoBench do
            wait(0.1)
            -- Auto bench press logic
            local args = {
                [1] = "BenchPress"
            }
            game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
        end
    end,
})

local AutoWeightToggle = MainTab:CreateToggle({
    Name = "Auto Lift Weights",
    CurrentValue = false,
    Flag = "AutoWeight",
    Callback = function(Value)
        Settings.AutoWeight = Value
        while Settings.AutoWeight do
            wait(0.1)
            -- Auto weight lifting logic
            local args = {
                [1] = "LiftWeight"
            }
            game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
        end
    end,
})

local AutoCollectToggle = MainTab:CreateToggle({
    Name = "Auto Collect Coins",
    CurrentValue = false,
    Flag = "AutoCollect",
    Callback = function(Value)
        while Value do
            wait(0.5)
            for _, v in pairs(game:GetService("Workspace").Coins:GetChildren()) do
                if v:FindFirstChild("TouchInterest") then
                    firetouchinterest(LocalPlayer.Character.HumanoidRootPart, v, 0)
                    wait()
                    firetouchinterest(LocalPlayer.Character.HumanoidRootPart, v, 1)
                end
            end
        end
    end,
})

local MovementSection = MainTab:CreateSection("Movement")

local WalkSpeedSlider = MainTab:CreateSlider({
    Name = "Walk Speed",
    Range = {16, 200},
    Increment = 1,
    CurrentValue = 16,
    Flag = "WalkSpeed",
    Callback = function(Value)
        Settings.WalkSpeed = Value
        LocalPlayer.Character.Humanoid.WalkSpeed = Value
    end,
})

local JumpPowerSlider = MainTab:CreateSlider({
    Name = "Jump Power",
    Range = {50, 300},
    Increment = 1,
    CurrentValue = 50,
    Flag = "JumpPower",
    Callback = function(Value)
        Settings.JumpPower = Value
        LocalPlayer.Character.Humanoid.JumpPower = Value
    end,
})

-- Killing Tab
local KillingTab = Window:CreateTab("⚔️ Killing", 4483362458)

local KillingSection = KillingTab:CreateSection("Player Targeting")

local TargetInput = KillingTab:CreateInput({
    Name = "Target Username",
    PlaceholderText = "Enter username",
    RemoveTextAfterFocusLost = false,
    Callback = function(Text)
        Settings.TargetPlayer = Text
    end,
})

local AutoKillToggle = KillingTab:CreateToggle({
    Name = "Auto Kill Target",
    CurrentValue = false,
    Flag = "AutoKill",
    Callback = function(Value)
        Settings.AutoKill = Value
        while Settings.AutoKill do
            wait(0.5)
            local target = Players:FindFirstChild(Settings.TargetPlayer)
            if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then
                -- Teleport and damage logic
                LocalPlayer.Character.HumanoidRootPart.CFrame = target.Character.HumanoidRootPart.CFrame
                local args = {
                    [1] = "Punch",
                    [2] = target
                }
                game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
            end
        end
    end,
})

local AutoKillAllToggle = KillingTab:CreateToggle({
    Name = "Auto Kill Everyone",
    CurrentValue = false,
    Flag = "AutoKillAll",
    Callback = function(Value)
        Settings.AutoKillAll = Value
        while Settings.AutoKillAll do
            wait(0.5)
            for _, player in pairs(Players:GetPlayers()) do
                if player ~= LocalPlayer and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
                    LocalPlayer.Character.HumanoidRootPart.CFrame = player.Character.HumanoidRootPart.CFrame
                    local args = {
                        [1] = "Punch",
                        [2] = player
                    }
                    game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
                    wait(0.1)
                end
            end
        end
    end,
})

local InstantKillButton = KillingTab:CreateButton({
    Name = "Instant Kill Target",
    Callback = function()
        local target = Players:FindFirstChild(Settings.TargetPlayer)
        if target and target.Character then
            for i = 1, 50 do
                local args = {
                    [1] = "Punch",
                    [2] = target
                }
                game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
                wait(0.01)
            end
        end
    end,
})

-- OP Tab
local OPTab = Window:CreateTab("💪 OP Features", 4483362458)

local OPSection = OPTab:CreateSection("Advanced Grinding")

local FastRebirthToggle = OPTab:CreateToggle({
    Name = "Fast Rebirth",
    CurrentValue = false,
    Flag = "FastRebirth",
    Callback = function(Value)
        Settings.FastRebirth = Value
        while Settings.FastRebirth do
            wait(1)
            local args = {
                [1] = "Rebirth"
            }
            game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
        end
    end,
})

local FastGrindToggle = OPTab:CreateToggle({
    Name = "Fast Grind",
    CurrentValue = false,
    Flag = "FastGrind",
    Callback = function(Value)
        Settings.FastGrind = Value
        while Settings.FastGrind do
            wait(0.05)
            -- Fast grind all exercises
            local exercises = {"BenchPress", "LiftWeight", "Squat", "Situp"}
            for _, exercise in pairs(exercises) do
                local args = {
                    [1] = exercise
                }
                game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
            end
        end
    end,
})

local SpeedGrindToggle = OPTab:CreateToggle({
    Name = "Speed Grind V2 (Ultra Fast)",
    CurrentValue = false,
    Flag = "SpeedGrind",
    Callback = function(Value)
        Settings.SpeedGrind = Value
        spawn(function()
            while Settings.SpeedGrind do
                wait()
                for i = 1, 10 do
                    local args = {
                        [1] = "BenchPress"
                    }
                    game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
                    local args2 = {
                        [1] = "LiftWeight"
                    }
                    game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args2))
                end
            end
        end)
    end,
})

local FastStrengthToggle = OPTab:CreateToggle({
    Name = "Fast Strength Gain",
    CurrentValue = false,
    Flag = "FastStrength",
    Callback = function(Value)
        Settings.FastStrength = Value
        while Settings.FastStrength do
            wait(0.01)
            local args = {
                [1] = "GainStrength",
                [2] = 1000
            }
            game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
        end
    end,
})

local InstantMaxButton = OPTab:CreateButton({
    Name = "Instant Max Stats (Risky)",
    Callback = function()
        for i = 1, 100 do
            local args = {
                [1] = "GainStrength",
                [2] = 99999
            }
            game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
            wait(0.01)
        end
        Rayfield:Notify({
            Title = "Stats Boosted",
            Content = "Attempted to max stats!",
            Duration = 3,
            Image = 4483362458,
        })
    end,
})

-- Pets Tab
local PetsTab = Window:CreateTab("🐾 Pets", 4483362458)

local PetsSection = PetsTab:CreateSection("Pet Management")

local GiveAllPetsButton = PetsTab:CreateButton({
    Name = "Give All Pets",
    Callback = function()
        local pets = {"Dragon", "Phoenix", "Unicorn", "Tiger", "Lion", "Wolf", "Bear", "Eagle"}
        for _, pet in pairs(pets) do
            local args = {
                [1] = "GivePet",
                [2] = pet
            }
            game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
            wait(0.1)
        end
        Rayfield:Notify({
            Title = "Pets",
            Content = "Attempted to give all pets!",
            Duration = 3,
            Image = 4483362458,
        })
    end,
})

local MaxPetsButton = PetsTab:CreateButton({
    Name = "Max All Pets Level",
    Callback = function()
        for _, pet in pairs(LocalPlayer.Pets:GetChildren()) do
            local args = {
                [1] = "UpgradePet",
                [2] = pet.Name,
                [3] = 999
            }
            game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
        end
        Rayfield:Notify({
            Title = "Pets",
            Content = "Attempted to max pet levels!",
            Duration = 3,
            Image = 4483362458,
        })
    end,
})

local EquipAllPetsButton = PetsTab:CreateButton({
    Name = "Equip All Pets",
    Callback = function()
        for _, pet in pairs(LocalPlayer.Pets:GetChildren()) do
            local args = {
                [1] = "EquipPet",
                [2] = pet.Name
            }
            game:GetService("ReplicatedStorage").RemoteEvent:FireServer(unpack(args))
            wait(0.05)
        end
    end,
})

-- Maintain walk speed and jump power
RunService.Heartbeat:Connect(function()
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then
        LocalPlayer.Character.Humanoid.WalkSpeed = Settings.WalkSpeed
        LocalPlayer.Character.Humanoid.JumpPower = Settings.JumpPower
    end
end)

-- Character respawn handler
LocalPlayer.CharacterAdded:Connect(function(char)
    Character = char
    Humanoid = char:WaitForChild("Humanoid")
    wait(0.5)
    Humanoid.WalkSpeed = Settings.WalkSpeed
    Humanoid.JumpPower = Settings.JumpPower
end)

Rayfield:Notify({
    Title = "Script Loaded",
    Content = "Muscle Legends script loaded successfully!",
    Duration = 5,
    Image = 4483362458,
})

print("Muscle Legends Script Loaded!")