0% found this document useful (0 votes)
129 views

Lua Script Editable

The document contains code for a script that creates a GUI for an FPS game. It defines variables and functions for ESP, aimbot, and other features. The GUI is created with UI elements like frames and labels to display instructions and status updates. Player objects are accessed to get information and apply effects like ESP boxes and aim locking.

Uploaded by

Adrian Maulana
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
129 views

Lua Script Editable

The document contains code for a script that creates a GUI for an FPS game. It defines variables and functions for ESP, aimbot, and other features. The GUI is created with UI elements like frames and labels to display instructions and status updates. Player objects are accessed to get information and apply effects like ESP boxes and aim locking.

Uploaded by

Adrian Maulana
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 8

local plrs = game:GetService("Players")

local TeamBased = true ; local teambasedswitch = "o"


local presskeytoaim = true; local aimkey = "e"
local raycast = false

local espupdatetime = 5; autoesp = false

local lockaim = true; local lockangle = 5

--function findwat(folder, what)


-- for i, smth in pairs(folder:GetChildren()) do
-- if string.find(string.lower(tostring(smth)), string.lower(what)) then
-- return smth
-- end
-- end
--end
--
--local plrs = findwat(game, "Players")

local Gui = Instance.new("ScreenGui")


local Move = Instance.new("Frame")
local Main = Instance.new("Frame")
local EspStatus = Instance.new("TextLabel")
local st1 = Instance.new("TextLabel")
local st1_2 = Instance.new("TextLabel")
local st1_3 = Instance.new("TextLabel")
local Name = Instance.new("TextLabel")
--Properties:
Gui.Name = "Gui"
Gui.Parent = plrs.LocalPlayer:WaitForChild("PlayerGui")

Move.Name = "Move"
Move.Parent = Gui
Move.BackgroundColor3 = Color3.new(0.0431373, 1, 0.0745098)
Move.BackgroundTransparency = 0.40000000596046
Move.BorderSizePixel = 0
Move.Position = UDim2.new(0.005, 0,0.018, 0)
Move.Size = UDim2.new(0.28141585, 0, 0.0320388414, 0)

Main.Name = "Main"
Main.Parent = Move
Main.BackgroundColor3 = Color3.new(0.176471, 0.176471, 0.176471)
Main.BackgroundTransparency = 0.69999998807907
Main.Position = UDim2.new(0, 0, 0.995670795, 0)
Main.Size = UDim2.new(1.0000006, 0, 9.79697132, 0)

EspStatus.Name = "EspStatus"
EspStatus.Parent = Main
EspStatus.BackgroundColor3 = Color3.new(1, 1, 1)
EspStatus.BackgroundTransparency = 1
EspStatus.Size = UDim2.new(0.272955924, 0, 0.161862016, 0)
EspStatus.Font = Enum.Font.ArialBold
EspStatus.Text = "Press T to update Esp"
EspStatus.TextColor3 = Color3.new(0.0431373, 1, 0.0745098)
EspStatus.TextScaled = true
EspStatus.TextSize = 14
EspStatus.TextWrapped = true

st1.Name = "st1"
st1.Parent = Main
st1.BackgroundColor3 = Color3.new(1, 1, 1)
st1.BackgroundTransparency = 1
st1.Position = UDim2.new(0.271787882, 0, 0, 0)
st1.Size = UDim2.new(0.728211343, 0, 0.161862016, 0)
st1.Font = Enum.Font.ArialBold
st1.Text = "Press "..aimkey.." to lock on a person inside ur view"
st1.TextColor3 = Color3.new(0.0431373, 1, 0.0745098)
st1.TextScaled = true
st1.TextSize = 14
st1.TextWrapped = true

st1_2.Name = "st1"
st1_2.Parent = Main
st1_2.BackgroundColor3 = Color3.new(1, 1, 1)
st1_2.BackgroundTransparency = 1
st1_2.Position = UDim2.new(0, 0, 0.375590861, 0)
st1_2.Size = UDim2.new(0.999999881, 0, 0.161862016, 0)
st1_2.Font = Enum.Font.ArialBold
st1_2.Text = "Press L to enable esp loop"
st1_2.TextColor3 = Color3.new(0.0431373, 1, 0.0745098)
st1_2.TextScaled = true
st1_2.TextSize = 14
st1_2.TextWrapped = true

st1_3.Name = "st1"
st1_3.Parent = Main
st1_3.BackgroundColor3 = Color3.new(1, 1, 1)
st1_3.BackgroundTransparency = 1
st1_3.Position = UDim2.new(0, 0, 0.18558608, 0)
st1_3.Size = UDim2.new(0.999999881, 0, 0.161862016, 0)
st1_3.Font = Enum.Font.ArialBold
st1_3.Text = "Press O to change team based mode"
st1_3.TextColor3 = Color3.new(0.0431373, 1, 0.0745098)
st1_3.TextScaled = true
st1_3.TextSize = 14
st1_3.TextWrapped = true
local teambasedstatus = st1_3:Clone()
teambasedstatus.Parent = st1_3
teambasedstatus.TextScaled = true
teambasedstatus.Position = UDim2.new(0, 0,0.694, 0)
teambasedstatus.Text = tostring(TeamBased)

Name.Name = "Name"
Name.Parent = Move
Name.BackgroundColor3 = Color3.new(1, 1, 1)
Name.BackgroundTransparency = 1
Name.Size = UDim2.new(0.838, 0, 0.980000019, 0)
Name.Font = Enum.Font.Arial
Name.Text = "FPS gui v1.0"
Name.TextColor3 = Color3.new(0, 0, 0)
Name.TextScaled = true
Name.TextSize = 14
Name.TextWrapped = true
Name.TextXAlignment = Enum.TextXAlignment.Left
-- Scripts:

local plrsforaim = {}

local lplr = game:GetService("Players").LocalPlayer


Move.Draggable = true
Gui.ResetOnSpawn = false
Gui.Name = "Chat"
Gui.DisplayOrder = 999

Gui.Parent = plrs.LocalPlayer.PlayerGui

f = {}
local espforlder

f.addesp = function()
--print("ESP ran")
if espforlder then
else
espforlder = Instance.new("Folder")
espforlder.Parent = game.Workspace.CurrentCamera
end
for i, v in pairs(espforlder:GetChildren()) do
v:Destroy()
end
for _, plr in pairs(plrs:GetChildren()) do
if plr.Character and plr.Character.Humanoid.Health > 0 and plr.Name ~=
lplr.Name then
if TeamBased == true then
if plr.Team.Name ~= plrs.LocalPlayer.Team.Name then
local e = espforlder:FindFirstChild(plr.Name)
if not e then
--print("Added esp for team based")
local bill = Instance.new("BillboardGui",
espforlder)
bill.Name = plr.Name
bill.AlwaysOnTop = true
bill.Size = UDim2.new(1,0,1,0)
bill.Adornee = plr.Character.Head
local Frame = Instance.new('Frame',bill)
Frame.Active = true
Frame.BackgroundColor3 =
Color3.new(0/255,255/255,0/255)
Frame.BackgroundTransparency = 0
Frame.BorderSizePixel = 0
Frame.AnchorPoint = Vector2.new(.5, .5)
Frame.Position = UDim2.new (0.5,0,0.5,0)
Frame.Size = UDim2.new (1,0,1,0)
Frame.Rotation = 0
plr.Character.Humanoid.Died:Connect(function()
bill:Destroy()
end)
end
end
else
local e = espforlder:FindFirstChild(plr.Name)
if not e then
--print("Added esp")
local bill = Instance.new("BillboardGui", espforlder)
bill.Name = plr.Name
bill.AlwaysOnTop = true
bill.Size = UDim2.new(1,0,1,0)
bill.Adornee = plr.Character.Head
local Frame = Instance.new('Frame',bill)
Frame.Active = true
Frame.BackgroundColor3 =
Color3.new(0/255,255/255,0/255)
Frame.BackgroundTransparency = 0
Frame.BorderSizePixel = 0
Frame.AnchorPoint = Vector2.new(.5, .5)
Frame.Position = UDim2.new (0.5,0,0.5,0)
Frame.Size = UDim2.new (1,0,1,0)
Frame.Rotation = 0
plr.Character.Humanoid.Died:Connect(function()
bill:Destroy()
end)
end
end

end
end
end
local cam = game.Workspace.CurrentCamera

local mouse = lplr:GetMouse()


local switch = false
local key = "k"
local aimatpart = nil
mouse.KeyDown:Connect(function(a)
if a == "t" then
print("worked1")
f.addesp()
elseif a == "u" then
if raycast == true then
raycast = false
else
raycast = true
end
elseif a == "l" then
if autoesp == false then
autoesp = true
else
autoesp = false
end
end
if a == "j" then
if mouse.Target then
mouse.Target:Destroy()
end
end
if a == key then
if switch == false then
switch = true
else
switch = false
if aimatpart ~= nil then
aimatpart = nil
end
end
elseif a == teambasedswitch then
if TeamBased == true then
TeamBased = false
teambasedstatus.Text = tostring(TeamBased)
else
TeamBased = true
teambasedstatus.Text = tostring(TeamBased)
end
elseif a == aimkey then
if not aimatpart then
local maxangle = math.rad(20)
for i, plr in pairs(plrs:GetChildren()) do
if plr.Name ~= lplr.Name and plr.Character and
plr.Character.Head and plr.Character.Humanoid and plr.Character.Humanoid.Health > 1
then
if TeamBased == true then
if plr.Team.Name ~= lplr.Team.Name then
local an = checkfov(plr.Character.Head)
if an < maxangle then
maxangle = an
aimatpart = plr.Character.Head
end
end
else
local an = checkfov(plr.Character.Head)
if an < maxangle then
maxangle = an
aimatpart = plr.Character.Head
end
print(plr)
end
plr.Character.Humanoid.Died:Connect(function()
if aimatpart.Parent == plr.Character or
aimatpart == nil then
aimatpart = nil
end
end)
end
end
else
aimatpart = nil
end
end
end)

function getfovxyz (p0, p1, deg)


local x1, y1, z1 = p0:ToOrientation()
local cf = CFrame.new(p0.p, p1.p)
local x2, y2, z2 = cf:ToOrientation()
--local d = math.deg
if deg then
--return Vector3.new(d(x1-x2), d(y1-y2), d(z1-z2))
else
return Vector3.new((x1-x2), (y1-y2), (z1-z2))
end
end

function getaimbotplrs()
plrsforaim = {}
for i, plr in pairs(plrs:GetChildren()) do
if plr.Character and plr.Character.Humanoid and
plr.Character.Humanoid.Health > 0 and plr.Name ~= lplr.Name and plr.Character.Head
then

if TeamBased == true then


if plr.Team.Name ~= lplr.Team.Name then
local cf =
CFrame.new(game.Workspace.CurrentCamera.CFrame.p, plr.Character.Head.CFrame.p)
local r = Ray.new(cf, cf.LookVector * 10000)
local ign = {}
for i, v in
pairs(plrs.LocalPlayer.Character:GetChildren()) do
if v:IsA("BasePart") then
table.insert(ign , v)
end
end
local obj =
game.Workspace:FindPartOnRayWithIgnoreList(r, ign)
if obj.Parent == plr.Character and obj.Parent ~=
lplr.Character then
table.insert(plrsforaim, obj)
end
end
else
local cf =
CFrame.new(game.Workspace.CurrentCamera.CFrame.p, plr.Character.Head.CFrame.p)
local r = Ray.new(cf, cf.LookVector * 10000)
local ign = {}
for i, v in pairs(plrs.LocalPlayer.Character:GetChildren())
do
if v:IsA("BasePart") then
table.insert(ign , v)
end
end
local obj = game.Workspace:FindPartOnRayWithIgnoreList(r,
ign)
if obj.Parent == plr.Character and obj.Parent ~=
lplr.Character then
table.insert(plrsforaim, obj)
end
end

end
end
end

function aimat(part)
cam.CFrame = CFrame.new(cam.CFrame.p, part.CFrame.p)
end
function checkfov (part)
local fov = getfovxyz(game.Workspace.CurrentCamera.CFrame, part.CFrame)
local angle = math.abs(fov.X) + math.abs(fov.Y)
return angle
end

game:GetService("RunService").RenderStepped:Connect(function()
if aimatpart then
aimat(aimatpart)
if aimatpart.Parent == plrs.LocalPlayer.Character then
aimatpart = nil
end
end

-- if switch == true then


-- local maxangle = 99999
--
-- --print("Loop")
-- if true and raycast == false then
-- for i, plr in pairs(plrs:GetChildren()) do
-- if plr.Name ~= lplr.Name and plr.Character and
plr.Character.Head and plr.Character.Humanoid and plr.Character.Humanoid.Health > 1
then
-- if TeamBased then
-- if plr.Team.Name ~= lplr.Team.Name or
plr.Team.TeamColor ~= lplr.Team.TeamColor then
-- local an = checkfov(plr.Character.Head)
-- if an < maxangle then
-- maxangle = an
-- aimatpart = plr.Character.Head
-- if an < lockangle then
-- break
-- end
-- end
-- end
-- else
-- local an = checkfov(plr.Character.Head)
-- if an < maxangle then
-- maxangle = an
-- aimatpart = plr.Character.Head
-- if an < lockangle then
-- break
-- end
-- end
-- end
--
--
--
--
-- end
-- end
-- elseif raycast == true then
--
-- end

if raycast == true and switch == false and not aimatpart then


getaimbotplrs()
aimatpart = nil
local maxangle = 999
for i, v in ipairs(plrsforaim) do
if v.Parent ~= lplr.Character then
local an = checkfov(v)
if an < maxangle and v ~= lplr.Character.Head then
maxangle = an
aimatpart = v
print(v:GetFullName())
v.Parent.Humanoid.Died:connect(function()
aimatpart = nil
end)
end
end
end

end
end)
delay(0, function()
while wait(espupdatetime) do
if autoesp == true then
pcall(function()
f.addesp()
end)
end
end
end)
warn("loaded")

You might also like