Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- PLAYER = game.Players.LocalPlayer
- MOUSE = PLAYER:GetMouse()
- CC = game.Workspace.CurrentCamera
- ENABLED = false
- ESP_ENABLED = false
- _G.FREE_FOR_ALL = true
- _G.BIND = 50
- _G.ESP_BIND = 52
- _G.CHANGE_AIM = 'q'
- CLOSE = 'p'
- OPEN = 'l'
- DESTROY = 'x'
- _G.AIM_AT = 'Head'
- wait(1)
- function GetNearestPlayerToMouse()
- local PLAYERS = {}
- local PLAYER_HOLD = {}
- local DISTANCES = {}
- for i, v in pairs(game.Workspace.Zombies:GetChildren()) do
- if v ~= PLAYER then
- table.insert(PLAYERS, v)
- end
- end
- for i, v in pairs(PLAYERS) do
- if _G.FREE_FOR_ALL == false then
- if v and (v) ~= nil and v.TeamColor ~= PLAYER.TeamColor then
- local AIM = v:FindFirstChild(_G.AIM_AT)
- if AIM ~= nil then
- local DISTANCE = (AIM.Position - game.Workspace.CurrentCamera.CoordinateFrame.p).magnitude
- local RAY = Ray.new(game.Workspace.CurrentCamera.CoordinateFrame.p, (MOUSE.Hit.p - CC.CoordinateFrame.p).unit * DISTANCE)
- local HIT,POS = game.Workspace:FindPartOnRay(RAY, game.Workspace)
- local DIFF = math.floor((POS - AIM.Position).magnitude)
- PLAYER_HOLD[v.Name .. i] = {}
- PLAYER_HOLD[v.Name .. i].dist = DISTANCE
- PLAYER_HOLD[v.Name .. i].plr = v
- PLAYER_HOLD[v.Name .. i].diff = DIFF
- table.insert(DISTANCES, DIFF)
- end
- end
- elseif _G.FREE_FOR_ALL == true then
- local AIM = v:FindFirstChild(_G.AIM_AT)
- if AIM ~= nil then
- local DISTANCE = (AIM.Position - game.Workspace.CurrentCamera.CoordinateFrame.p).magnitude
- local RAY = Ray.new(game.Workspace.CurrentCamera.CoordinateFrame.p, (MOUSE.Hit.p - CC.CoordinateFrame.p).unit * DISTANCE)
- local HIT,POS = game.Workspace:FindPartOnRay(RAY, game.Workspace)
- local DIFF = math.floor((POS - AIM.Position).magnitude)
- PLAYER_HOLD[v.Name .. i] = {}
- PLAYER_HOLD[v.Name .. i].dist = DISTANCE
- PLAYER_HOLD[v.Name .. i].plr = v
- PLAYER_HOLD[v.Name .. i].diff = DIFF
- table.insert(DISTANCES, DIFF)
- end
- end
- end
- if unpack(DISTANCES) == nil then
- return false
- end
- local L_DISTANCE = math.floor(math.min(unpack(DISTANCES)))
- if L_DISTANCE > 20 then
- return false
- end
- for i, v in pairs(PLAYER_HOLD) do
- if v.diff == L_DISTANCE then
- return v.plr
- end
- end
- return false
- end
- GUI_MAIN = Instance.new('ScreenGui', game.CoreGui)
- GUI_TARGET = Instance.new('TextLabel', GUI_MAIN)
- GUI_AIM_AT = Instance.new('TextLabel', GUI_MAIN)
- GUI_CREDITS = Instance.new('TextLabel', GUI_MAIN)
- GUI_MAIN.Name = 'AIMBOT'
- GUI_TARGET.Size = UDim2.new(0,200,0,30)
- GUI_TARGET.BackgroundTransparency = 1.5
- GUI_TARGET.BackgroundColor = BrickColor.new('Fossil')
- GUI_TARGET.BorderSizePixel = 0
- GUI_TARGET.Position = UDim2.new(0.5,-100,0,0)
- GUI_TARGET.Text = 'AIMBOT : Loaded, Press F9 for instructions!'
- GUI_TARGET.TextColor3 = Color3.new(1,1,1)
- GUI_TARGET.TextStrokeTransparency = 1
- GUI_TARGET.TextWrapped = true
- GUI_TARGET.FontSize = 'Size24'
- GUI_TARGET.Font = 'SourceSansBold'
- GUI_TARGET.TextScaled = true
- GUI_CREDITS.Size = UDim2.new(0, 237, 0, 14)
- GUI_CREDITS.BackgroundTransparency = 1.5
- GUI_CREDITS.BackgroundColor = BrickColor.new('Fossil')
- GUI_CREDITS.BorderSizePixel = 0
- GUI_CREDITS.Position = UDim2.new(0.5,-110,0,60)
- GUI_CREDITS.Text = 'Gui and half of the script made by LAZ3R#3702'
- GUI_CREDITS.TextColor3 = Color3.new(1,1,1)
- GUI_CREDITS.TextStrokeTransparency = 1
- GUI_CREDITS.TextWrapped = true
- GUI_CREDITS.Font = 'SourceSansBold'
- GUI_CREDITS.TextSize = 14
- GUI_CREDITS.TextScaled = true
- GUI_AIM_AT.Size = UDim2.new(0,200,0,20)
- GUI_AIM_AT.BackgroundTransparency = 1.5
- GUI_AIM_AT.BackgroundColor = BrickColor.new('Fossil')
- GUI_AIM_AT.BorderSizePixel = 0
- GUI_AIM_AT.Position = UDim2.new(0.5,-100,0,30)
- GUI_AIM_AT.Text = 'AIMING : HEAD'
- GUI_AIM_AT.TextColor3 = Color3.new(1,1,1)
- GUI_AIM_AT.TextStrokeTransparency = 1
- GUI_AIM_AT.TextWrapped = true
- GUI_AIM_AT.FontSize = 'Size18'
- GUI_AIM_AT.Font = 'SourceSansBold'
- local TRACK = false
- function CREATE(BASE, TEAM)
- local ESP_MAIN = Instance.new('BillboardGui', PLAYER.PlayerGui)
- local ESP_DOT = Instance.new('Frame', ESP_MAIN)
- local ESP_NAME = Instance.new('TextLabel', ESP_MAIN)
- ESP_MAIN.Name = 'ESP'
- ESP_MAIN.Adornee = BASE
- ESP_MAIN.AlwaysOnTop = true
- ESP_MAIN.ExtentsOffset = Vector3.new(0, 1, 0)
- ESP_MAIN.Size = UDim2.new(0, 5, 0, 5)
- ESP_DOT.Name = 'DOT'
- ESP_DOT.BackgroundColor = BrickColor.new('Bright red')
- ESP_DOT.BackgroundTransparency = 0.3
- ESP_DOT.BorderSizePixel = 0
- ESP_DOT.Position = UDim2.new(-0.5, 0, -0.5, 0)
- ESP_DOT.Size = UDim2.new(2, 0, 2, 0)
- ESP_DOT.Visible = true
- ESP_DOT.ZIndex = 10
- ESP_NAME.Name = 'NAME'
- ESP_NAME.BackgroundColor3 = Color3.new(255, 255, 255)
- ESP_NAME.BackgroundTransparency = 1
- ESP_NAME.BorderSizePixel = 0
- ESP_NAME.Position = UDim2.new(0, 0, 0, -40)
- ESP_NAME.Size = UDim2.new(1, 0, 10, 0)
- ESP_NAME.Visible = true
- ESP_NAME.ZIndex = 10
- ESP_NAME.Font = 'ArialBold'
- ESP_NAME.FontSize = 'Size14'
- ESP_NAME.Text = BASE.Parent.Name:upper()
- ESP_NAME.TextColor = BrickColor.new('Bright red')
- end
- function CLEAR()
- for _,v in pairs(PLAYER.PlayerGui:children()) do
- if v.Name == 'ESP' and v:IsA('BillboardGui') then
- v:Destroy()
- end
- end
- end
- function FIND()
- CLEAR()
- TRACK = true
- spawn(function()
- while wait() do
- if TRACK then
- CLEAR()
- for i,v in pairs(game.Players:GetChildren()) do
- if v and v:FindFirstChild('Head') then
- if _G.FREE_FOR_ALL == false then
- if v.TeamColor ~= PLAYER.TeamColor then
- if v:FindFirstChild('Head') then
- CREATE(v.Head, true)
- end
- end
- else
- if v:FindFirstChild('Head') then
- CREATE(v.Head, true)
- end
- end
- end
- end
- end
- end
- wait(1)
- end)
- end
- MOUSE.KeyDown:connect(function(KEY)
- KEY = KEY:lower():byte()
- if KEY == _G.BIND then
- ENABLED = true
- end
- end)
- print("--------------------")
- print("Instructions :")
- print("NOTE : Aimbot is already enabled automatically, there is no hotkey!!")
- print("Press Q to change Aim")
- print("Press P to close the gui")
- print("Press L to open the gui")
- print("Press X to delete the gui")
- print("Press left ctrl + left alt for esp ;)")
- print("Once Zombies have spawned, hold left ctrl and it will aim at the them!")
- print("All set? Alright, have fun!")
- print("Made By LAZ3R#3702")
- print("--------------------")
- MOUSE.KeyDown:connect(function(KEY)
- if KEY == CLOSE then
- GUI_TARGET.Visible = false
- GUI_AIM_AT.Visible = false
- GUI_CREDITS.Visible = false
- else if KEY == OPEN then
- GUI_TARGET.Visible = true
- GUI_AIM_AT.Visible = true
- GUI_CREDITS.Visible = true
- end
- end
- end)
- MOUSE.KeyDown:connect(function(KEY)
- if KEY == DESTROY then
- game.CoreGui:FindFirstChild("AIMBOT"):Destroy()
- end
- end)
- MOUSE.KeyUp:connect(function(KEY)
- KEY = KEY:lower():byte()
- if KEY == _G.BIND then
- ENABLED = false
- end
- end)
- MOUSE.KeyDown:connect(function(KEY)
- KEY = KEY:lower():byte()
- if KEY == _G.ESP_BIND then
- if ESP_ENABLED == false then
- FIND()
- ESP_ENABLED = true
- print('ESP : ON')
- elseif ESP_ENABLED == true then
- wait()
- CLEAR()
- TRACK = false
- ESP_ENABLED = true
- print('ESP : OFF')
- end
- end
- end)
- MOUSE.KeyDown:connect(function(KEY)
- if KEY == _G.CHANGE_AIM then
- if _G.AIM_AT == 'Head' then
- _G.AIM_AT = 'Torso'
- GUI_AIM_AT.Text = 'AIMING : TORSO'
- elseif _G.AIM_AT == 'Torso' then
- _G.AIM_AT = 'Head'
- GUI_AIM_AT.Text = 'AIMING : HEAD'
- end
- end
- end)
- game:GetService('RunService').RenderStepped:connect(function()
- if ENABLED then
- local TARGET = GetNearestPlayerToMouse()
- if (TARGET ~= false) then
- local AIM = TARGET:FindFirstChild(_G.AIM_AT)
- if AIM then
- CC.CoordinateFrame = CFrame.new(CC.CoordinateFrame.p, AIM.CFrame.p)
- end
- GUI_TARGET.Text = 'AIMBOT : ON'
- else
- GUI_TARGET.Text = 'AIMBOT : OFF'
- end
- end
- end)
- repeat
- wait()
- if ESP_ENABLED == true then
- FIND()
- end
- until ESP_ENABLED == false
- wait()
- _G.FREE_FOR_ALL = true
- _G.BIND = 50 -- LEFT CTRL
- _G.ESP_BIND = 52 -- LEFT ALT
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement