Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- HideGuiInCoreGui = true --set to true or false
- Headshots = true --set to true or false
- local AimbotMethod = 1 --set to 1 or 2, 1 is renderstep, 2 is heartbeat
- local ESPRefreshRate = 1 --how many seconds before esp updates (MAKE SURE IT'S NOT TOO SHORT OR ELSE IT MIGHT CAUSE LAG)
- local AutoESP = false --if you want auto ESP change this
- --do not touch anything beyond this point
- local ESPRefresh = false
- local ESPEnabled = false
- if AutoESP then
- game:GetService("RunService").Heartbeat:Connect(function()
- ESPEnabled = true
- end)
- end
- local currentCamera = workspace.CurrentCamera
- local Player = game.Players.LocalPlayer
- local Mouse = Player:GetMouse()
- local LerpCamera = false
- local PartToLookAt = nil
- local LockedOn = false
- local Teams = game:GetService("Teams")
- local playerGui = Player:WaitForChild("PlayerGui")
- local coreGui = game:GetService("CoreGui")
- JSONPackedFunctions = [=[ {"CloseButton":{"Event1":"MouseButton1Down"},"Mouse":{"Event1":"KeyDown"}}]=]
- local parent = ((HideGuiInCoreGui == true and coreGui) or (HideGuiInCoreGui == false and playerGui))
- local parentESP = ((Headshots == true and "Head") or (Headshots == false and "HumanoidRootPart"))
- local methodFunction = ((AimbotMethod == 1 and "RenderStepped") or (AimbotMethod == 2 and "Heartbeat"))
- local Bigspace = function(spacenum)
- if tonumber(spacenum) == nil then return " " end
- local space = ""
- for i = 1, spacenum do
- space = space.." "
- end
- return space
- end
- local FOVXYZ = function(P0, P1, DEG)
- local x1, y1, z1 = P0:ToOrientation()
- local cf = CFrame.new(P0.p, P1.p)
- local x2, y2, z2 = cf:ToOrientation()
- if not DEG then
- return Vector3.new((x1-x2), (y1-y2), (z1-z2))
- end
- end
- local checkFOV = function(Part)
- local FOV = FOVXYZ(currentCamera.CFrame, Part.CFrame)
- local Ang = math.abs(FOV.X) + math.abs(FOV.Y)
- return Ang
- end
- local Decode = function(JSON)
- local value = "Failed"
- local func = pcall(function() value = game:GetService("HttpService"):JSONDecode(JSON) end)
- return value
- end
- local Encode = function(TABLE)
- local value = "Failed"
- local func = pcall(function() value = game:GetService("HttpService"):JSONEncode(TABLE) end)
- return value
- end
- local GiveESP = function()
- local folder
- if parent:FindFirstChild("ESPMarkers") then
- folder = parent:FindFirstChild("ESPMarkers")
- for _, child in pairs(folder:GetChildren()) do
- child:Destroy()
- end
- else
- folder = Instance.new("Folder")
- folder.Name = "ESPMarkers"
- folder.Parent = parent
- folder.Archivable = true
- end
- local AllTeams = Teams:GetTeams()
- local playerTeam = Player.Team
- local TeamsToTarget = {}
- for _, t in pairs(AllTeams) do
- TeamsToTarget[t.Name] = (t ~= playerTeam)
- end
- for _, p in pairs(game.Players:GetPlayers()) do
- if p.Character then
- local enemyCharacter = p.Character
- if enemyCharacter:FindFirstChild("Health") then
- if enemyCharacter:WaitForChild("Health").Value > 0 then
- if TeamsToTarget[p.Team.Name] == true then
- local billboard = Instance.new("BillboardGui")
- local health = Instance.new("TextLabel")
- local frame = Instance.new("Frame")
- local teamColor = p.TeamColor
- billboard.Size = UDim2.new(1, 0, 1, 0)
- billboard.AlwaysOnTop = true
- billboard.Archivable = false
- billboard.Enabled = true
- if enemyCharacter:FindFirstChild(parentESP) then
- billboard.Adornee = enemyCharacter:FindFirstChild(parentESP)
- else
- billboard.Adornee = enemyCharacter:FindFirstChild("Head")
- end
- frame.BackgroundColor3 = teamColor.Color
- frame.Position = UDim2.new(0, 0, 0, 0)
- frame.Size = UDim2.new(1, 0, 1, 0)
- frame.BackgroundTransparency = 0
- frame.BorderSizePixel = 0
- frame.Selectable = false
- frame.Archivable = false
- frame.Active = false
- health.TextColor3 = Color3.fromRGB(25, 25, 25)
- health.Position = UDim2.new(0, 0, .25, 0)
- health.Size = UDim2.new(1, 0, .5, 0)
- health.BackgroundTransparency = 1
- health.BorderSizePixel = 0
- health.Archivable = false
- health.Selectable = false
- health.TextScaled = true
- health.Active = false
- health.Text = "100%"
- frame.Parent = billboard
- health.Parent = billboard
- billboard.Parent = folder
- local Connection
- Connection = game:GetService("RunService")[methodFunction]:Connect(function()
- if enemyCharacter == nil then health.Text = "0%" Connection:Disconnect() end
- if enemyCharacter:WaitForChild("Health").Value < 1 then health.Text = "0%" Connection:Disconnect() end
- if billboard == nil then
- billboard = nil
- Connection:Disconnect()
- end
- if ESPEnabled == false then
- if folder then
- billboard:Destroy()
- end
- Connection:Disconnect()
- end
- health.Text = enemyCharacter:WaitForChild("Health").Value.."%"
- end)
- spawn(function()
- wait(ESPRefreshRate)
- billboard:Destroy()
- Connection:Disconnect()
- end)
- end
- end
- end
- end
- end
- end
- local InitFunctions = function(INSTANCE,TABLE)
- if INSTANCE.Name == "CLOSEBUTTON" then
- for k, v in next, TABLE do
- if k == "Event1" then
- INSTANCE[v]:Connect(function()
- INSTANCE.Parent.Parent:Destroy()
- end)
- end
- end
- elseif INSTANCE == Mouse then
- for k, v in next, TABLE do
- if k == "Event1" then
- INSTANCE[v]:Connect(function(Key)
- if string.lower(Key) == "e" then
- if LockedOn == true then LockedOn = false PartToLookAt = nil return end
- if LockedOn == false or not PartToLookAt then
- if not PartToLookAt then
- if Player.Character then
- if Player.Character:WaitForChild("Health").Value > 0 or Player:WaitForChild("Status"):WaitForChild("Alive").Value == true then
- local MXANG = math.rad(8)
- for _, plr in pairs(game.Players:GetPlayers()) do
- if plr ~= Player and plr.Character and plr.Character ~= Player.Character and plr.Character:FindFirstChild(parentESP) and plr.Character:FindFirstChild("Humanoid") and plr.Character:FindFirstChild("Humanoid").Health > 1 then
- if plr.Team ~= Player.Team then
- local AN = checkFOV(plr.Character:FindFirstChild(parentESP))
- if AN < MXANG then
- MXANG = AN
- PartToLookAt = plr.Character:FindFirstChild(parentESP)
- end
- end
- if PartToLookAt then
- LockedOn = true
- local Dead = false
- local Connection
- Connection = plr:WaitForChild("Status"):WaitForChild("Alive").Changed:Connect(function()
- if plr:WaitForChild("Status"):WaitForChild("Alive").Value == false then
- Dead = true
- PartToLookAt = nil
- Connection:Disconnect()
- end
- end)
- local C
- C = game:GetService("RunService")[methodFunction]:Connect(function()
- if PartToLookAt == nil or plr.Character == nil or Player.Character == nil then
- PartToLookAt = nil
- currentCamera.CFrame = CFrame.new(currentCamera.CFrame.Position, currentCamera.CFrame.LookVector + Vector3.new(0, 10, 0))
- C:Disconnect()
- end
- if plr.Character:WaitForChild("Health").Value < 1 or Player.Character:WaitForChild("Health").Value < 1 then
- PartToLookAt = nil
- spawn(function()
- game:GetService("RunService").Heartbeat:Wait()
- currentCamera.CFrame = CFrame.new(currentCamera.CFrame.Position + Vector3.new(75, 0, 0), currentCamera.CFrame.LookVector + Vector3.new(0, 10, 0))
- end)
- C:Disconnect()
- end
- if Dead then
- PartToLookAt = nil
- spawn(function()
- game:GetService("RunService").Heartbeat:Wait()
- currentCamera.CFrame = CFrame.new(currentCamera.CFrame.Position + Vector3.new(75, 0, 0), currentCamera.CFrame.LookVector + Vector3.new(0, 10, 0))
- end)
- C:Disconnect()
- end
- if not LerpCamera then
- currentCamera.CFrame = CFrame.new(currentCamera.CFrame.Position, plr.Character:FindFirstChild(parentESP).CFrame.Position)
- else
- currentCamera.CFrame = currentCamera.CFrame:Lerp(CFrame.new(currentCamera.CFrame.Position, plr.Character:FindFirstChild(parentESP).CFrame.Position), .1)
- end
- end)
- break
- end
- end
- end
- end
- end
- end
- end
- elseif string.lower(Key) == "l" then
- LerpCamera = not LerpCamera
- elseif string.lower(Key) == "j" then
- ESPEnabled = not ESPEnabled
- end
- end)
- end
- end
- end
- end
- function Init()
- InitFunctions(Mouse,Decode(JSONPackedFunctions)["Mouse"])
- spawn(function()
- while wait(ESPRefreshRate) do
- if ESPEnabled then
- GiveESP()
- else
- if parent:FindFirstChild("ESPMarkers") then
- parent:FindFirstChild("ESPMarkers"):Destroy()
- end
- end
- end
- end)
- local gui = Instance.new("ScreenGui")
- local closebutton = Instance.new("TextButton")
- local Einteraction = Instance.new("TextLabel")
- local Linteraction = Instance.new("TextLabel")
- local Ointeraction = Instance.new("TextLabel")
- local topframe = Instance.new("TextLabel")
- local midframe = Instance.new("Frame")
- gui.Name = "JGWHEARSENALGUI"
- gui.IgnoreGuiInset = false
- gui.ResetOnSpawn = false
- gui.Archivable = false
- gui.DisplayOrder = 999
- gui.Enabled = true
- topframe.BackgroundColor3 = Color3.fromRGB(70, 70, 70)
- topframe.TextXAlignment = Enum.TextXAlignment.Center
- topframe.TextColor3 = Color3.fromRGB(155, 155, 155)
- topframe.Position = UDim2.new(-1, 0, .5, 0)
- topframe.Size = UDim2.new(.3, 0, .05, 0)
- topframe.BackgroundTransparency = .25
- topframe.Text = "jgwhe Arsenal GUI"
- topframe.ClipsDescendants = false
- topframe.Font = Enum.Font.Gotham
- topframe.BorderSizePixel = 0
- topframe.Name = "TOPFRAME"
- topframe.Selectable = true
- topframe.Draggable = true
- topframe.TextSize = 12
- topframe.Active = true
- topframe.ZIndex = 2
- midframe.BackgroundColor3 = Color3.fromRGB(125, 125, 125)
- midframe.Position = UDim2.new(0, 0, 0, 0)
- midframe.BackgroundTransparency = .25
- midframe.Size = UDim2.new(1, 0, 1, 0)
- midframe.ClipsDescendants = true
- midframe.BorderSizePixel = 0
- midframe.Selectable = true
- midframe.Draggable = false
- midframe.Name = "MIDFRAME"
- midframe.Active = true
- Einteraction.Text = string.format("Press E to lock onto someone%s(aim with your camera)", Bigspace(45))
- Einteraction.TextColor3 = Color3.fromRGB(245, 245, 245)
- Einteraction.Position = UDim2.new(0, 0, .1, 0)
- Einteraction.Size = UDim2.new(1, 0, .15, 0)
- Einteraction.BackgroundTransparency = 1
- Einteraction.Font = Enum.Font.Gotham
- Einteraction.TextTransparency = .25
- Einteraction.BorderSizePixel = 0
- Einteraction.TextScaled = true
- Einteraction.Name = "EINTERACT"
- Einteraction.Active = false
- Linteraction.Text = string.format("Press L to lerp your camera%s(good for crossbows or rocket launchers)", Bigspace(45))
- Linteraction.TextColor3 = Color3.fromRGB(245, 245, 245)
- Linteraction.Position = UDim2.new(0, 0, .3, 0)
- Linteraction.Size = UDim2.new(1, 0, .15, 0)
- Linteraction.BackgroundTransparency = 1
- Linteraction.Font = Enum.Font.Gotham
- Linteraction.TextTransparency = .25
- Linteraction.BorderSizePixel = 0
- Linteraction.TextScaled = true
- Linteraction.Name = "LINTERACT"
- Linteraction.Active = false
- Ointeraction.Text = string.format("Press J to use ESP%s(shows a square with health)", Bigspace(55))
- Ointeraction.TextColor3 = Color3.fromRGB(245, 245, 245)
- Ointeraction.Position = UDim2.new(0, 0, .5, 0)
- Ointeraction.Size = UDim2.new(1, 0, .15, 0)
- Ointeraction.BackgroundTransparency = 1
- Ointeraction.Font = Enum.Font.Gotham
- Ointeraction.TextTransparency = .25
- Ointeraction.BorderSizePixel = 0
- Ointeraction.TextScaled = true
- Ointeraction.Name = "OINTERACT"
- Ointeraction.Active = false
- closebutton.BackgroundColor3 = Color3.fromRGB(155, 5, 5)
- closebutton.TextColor3 = Color3.fromRGB(5, 5, 5)
- closebutton.Position = UDim2.new(.885, 0, .1, 0)
- closebutton.Size = UDim2.new(.1, 0, .8, 0)
- closebutton.BackgroundTransparency = .25
- closebutton.TextTransparency = .25
- closebutton.Name = "CLOSEBUTTON"
- closebutton.TextScaled = true
- closebutton.ZIndex = 3
- closebutton.Text = "X"
- InitFunctions(closebutton,Decode(JSONPackedFunctions)["CloseButton"])
- Einteraction.Parent = midframe
- Linteraction.Parent = midframe
- Ointeraction.Parent = midframe
- closebutton.Parent = topframe
- midframe.Parent = topframe
- topframe.Parent = gui
- gui.Parent = parent
- topframe:TweenPosition(UDim2.new(.02, 0, .5, 0), Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 2)
- wait(3)
- midframe:TweenSizeAndPosition(UDim2.new(1, 0, 7, 0), UDim2.new(0, 0, 1, 0), Enum.EasingDirection.InOut, Enum.EasingStyle.Quad, 1)
- end;
- wait(1)
- spawn(function()
- Init()
- warn("Script has loaded and initialized")
- end)
Advertisement
Advertisement