CCCPaste

ToanBreak Violence District Killer Script

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local CoreGui = game:GetService("CoreGui")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer

local Config = { 
    WalkSpeed = 23, 
    HitboxExpander = false, 
    HitboxSize = 15, 
    ESP_Player = false 
}
local Loops = {}
local OriginalSizes = {}

local function CreateESP(obj, color, text)
    if not obj or obj:FindFirstChild("KillerESP") then return end
    local hl = Instance.new("Highlight", obj); hl.Name="KillerESP"; hl.FillTransparency=1; hl.OutlineColor=color
    local bb = Instance.new("BillboardGui", obj); bb.Name="KillerESP_Txt"; bb.Size=UDim2.new(0,100,0,50); bb.AlwaysOnTop=true; bb.StudsOffset=Vector3.new(0,3,0)
    local t = Instance.new("TextLabel", bb); t.Size=UDim2.new(1,0,1,0); t.BackgroundTransparency=1; t.Text=text; t.TextColor3=color; t.Font=Enum.Font.GothamBold; t.TextSize=10
end

if CoreGui:FindFirstChild("KillerGUI") then CoreGui.KillerGUI:Destroy() end
local Screen = Instance.new("ScreenGui")
Screen.Name = "KillerGUI"; 
if gethui then Screen.Parent = gethui() else Screen.Parent = CoreGui end

local Frame = Instance.new("Frame", Screen)
local OriginalSize = UDim2.new(0, 170, 0, 250) -- Giảm chiều cao do bớt nút
Frame.Size = OriginalSize; Frame.Position = UDim2.new(0.8, 0, 0.3, 0)
Frame.BackgroundColor3 = Color3.fromRGB(30, 20, 20); Frame.ClipsDescendants = true
Instance.new("UICorner", Frame).CornerRadius = UDim.new(0, 4)

local Header = Instance.new("Frame", Frame)
Header.Size = UDim2.new(1, 0, 0, 24); Header.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
Instance.new("UICorner", Header).CornerRadius = UDim.new(0, 4)
local Title = Instance.new("TextLabel", Header)
Title.Text = "KILLER TOOLKIT"; Title.Size = UDim2.new(1, -45, 1, 0); Title.BackgroundTransparency = 1
Title.TextColor3 = Color3.new(1,1,1); Title.Font = Enum.Font.GothamBlack; Title.TextSize = 11; Title.Position = UDim2.new(0, 6, 0, 0); Title.TextXAlignment = Enum.TextXAlignment.Left

local function MakeDraggable(dragItem, moveItem)
    local dragging, dragInput, dragStart, startPos, UserInputService = false, nil, nil, nil, game:GetService("UserInputService")
    dragItem.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true; dragStart = input.Position; startPos = moveItem.Position end end)
    dragItem.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 d = input.Position - dragStart; moveItem.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + d.X, startPos.Y.Scale, startPos.Y.Offset + d.Y) end end)
    dragItem.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false end end)
end
MakeDraggable(Header, Frame)

local Scroll = Instance.new("ScrollingFrame", Frame)
Scroll.Position = UDim2.new(0,0,0,30); Scroll.Size = UDim2.new(1,0,1,-30); Scroll.BackgroundTransparency = 1; Scroll.ScrollBarThickness = 2
local Layout = Instance.new("UIListLayout", Scroll); Layout.Padding = UDim.new(0, 6); Layout.SortOrder = Enum.SortOrder.LayoutOrder
Instance.new("UIPadding", Scroll).PaddingTop = UDim.new(0, 5); Instance.new("UIPadding", Scroll).PaddingLeft = UDim.new(0, 5); Instance.new("UIPadding", Scroll).PaddingRight = UDim.new(0, 5)

local RestoreBtn = Instance.new("TextButton", Frame)
RestoreBtn.Size = UDim2.new(1, 0, 1, 0); RestoreBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40); RestoreBtn.Text = "+"; RestoreBtn.TextColor3 = Color3.new(1,1,1); RestoreBtn.TextSize = 30; RestoreBtn.Visible = false; RestoreBtn.Font = Enum.Font.GothamBold
Instance.new("UICorner", RestoreBtn).CornerRadius = UDim.new(0, 8)
MakeDraggable(RestoreBtn, Frame)

local CloseBtn = Instance.new("TextButton", Header); CloseBtn.Text = "×"; CloseBtn.Size = UDim2.new(0, 24, 1, 0); CloseBtn.Position = UDim2.new(1, -24, 0, 0); CloseBtn.BackgroundTransparency = 1; CloseBtn.TextColor3 = Color3.fromRGB(255, 200, 200); CloseBtn.Font = Enum.Font.GothamBlack
local MinBtn = Instance.new("TextButton", Header); MinBtn.Text = "-"; MinBtn.Size = UDim2.new(0, 24, 1, 0); MinBtn.Position = UDim2.new(1, -48, 0, 0); MinBtn.BackgroundTransparency = 1; MinBtn.TextColor3 = Color3.fromRGB(255, 255, 100); MinBtn.Font = Enum.Font.GothamBlack

MinBtn.MouseButton1Click:Connect(function() Header.Visible=false; Scroll.Visible=false; RestoreBtn.Visible=true; Frame:TweenSize(UDim2.new(0, 40, 0, 40), "Out", "Quad", 0.3, true) end)
RestoreBtn.MouseButton1Click:Connect(function() Frame:TweenSize(OriginalSize, "Out", "Quad", 0.3, true, function() Header.Visible=true; Scroll.Visible=true; RestoreBtn.Visible=false end) end)

local function AddToggle(text, callback)
    local btn = Instance.new("TextButton", Scroll)
    btn.Size = UDim2.new(1, 0, 0, 24); btn.BackgroundColor3 = Color3.fromRGB(50, 30, 30); btn.Text = text .. " [OFF]"
    btn.TextColor3 = Color3.fromRGB(200, 200, 200); btn.Font = Enum.Font.GothamBold; btn.TextSize = 10
    Instance.new("UICorner", btn).CornerRadius = UDim.new(0,4)
    local toggled = false
    btn.MouseButton1Click:Connect(function() 
        toggled = not toggled; 
        btn.Text = text .. (toggled and " [ON]" or " [OFF]"); 
        btn.TextColor3 = toggled and Color3.fromRGB(255, 50, 50) or Color3.fromRGB(200, 200, 200); 
        callback(toggled)
    end)
end
local function AddInput(text, placeholder, callback)
    local container = Instance.new("Frame", Scroll); container.Size = UDim2.new(1, 0, 0, 24); container.BackgroundTransparency = 1
    local label = Instance.new("TextLabel", container); label.Size = UDim2.new(0.4, 0, 1, 0); label.BackgroundTransparency = 1; label.Text = text; label.TextColor3 = Color3.fromRGB(200, 200, 200); label.Font = Enum.Font.GothamBold; label.TextSize = 10; label.TextXAlignment = Enum.TextXAlignment.Left
    local box = Instance.new("TextBox", container); box.Size = UDim2.new(0.6, 0, 1, 0); box.Position = UDim2.new(0.4, 0, 0, 0); box.BackgroundColor3 = Color3.fromRGB(40, 30, 30); box.Text = ""; box.PlaceholderText = placeholder; box.TextColor3 = Color3.fromRGB(255, 255, 255); box.Font = Enum.Font.Gotham; box.TextSize = 10
    Instance.new("UICorner", box).CornerRadius = UDim.new(0, 4)
    box.FocusLost:Connect(function() local num = tonumber(box.Text); if num then callback(num) end end)
end

AddToggle("Hitbox Expander", function(v) Config.HitboxExpander = v end)
AddInput("Hitbox Size", "Rec: 15-20", function(v) Config.HitboxSize = v end)
AddInput("Speed", "Rec: 23", function(v) Config.WalkSpeed = v end)
AddToggle("ESP Targets", function(v) Config.ESP_Player = v end)

Loops.Main = RunService.RenderStepped:Connect(function()
    pcall(function()
        local char = LocalPlayer.Character; if not char then return end
        
        local hum = char:FindFirstChild("Humanoid")
        if hum and hum.Health > 0 and hum.WalkSpeed ~= Config.WalkSpeed then hum.WalkSpeed = Config.WalkSpeed end

        if Config.HitboxExpander then
            local size = Config.HitboxSize
            for _, p in pairs(Players:GetPlayers()) do
                if p ~= LocalPlayer and p.Character then
                    local head = p.Character:FindFirstChild("Head")
                    if head then
                        if not OriginalSizes[head] then OriginalSizes[head] = {Size=head.Size, Trans=head.Transparency, Coll=head.CanCollide} end
                        head.Size = Vector3.new(size, size, size); head.Transparency = 0.6; head.CanCollide = false; head.Massless = true
                    end
                end
            end
        else
            for part, data in pairs(OriginalSizes) do
                if part and part.Parent then part.Size = data.Size; part.Transparency = data.Trans; part.CanCollide = data.Coll; part.Massless = false end
            end; table.clear(OriginalSizes)
        end
        
        if Config.ESP_Player then
            for _, p in pairs(Players:GetPlayers()) do if p ~= LocalPlayer and p.Character then CreateESP(p.Character, Color3.fromRGB(255, 0, 0), p.Name) end end
        else
            for _, v in pairs(workspace:GetDescendants()) do if v.Name == "KillerESP" or v.Name == "KillerESP_Txt" then v:Destroy() end end
        end
    end)
end)

CloseBtn.MouseButton1Click:Connect(function() 
    if Loops.Main then Loops.Main:Disconnect() end 
    Screen:Destroy() 
end)