ADVERTISEMENTREMOVE ADS
Game icon

ESP script [OPEN SOURCE]

Script preview thumbnail
Script Preview

Description

this is a bad esp i scripted but it works so use it if you want too, also I could have been serious and made it better but I didn't want too.

Features:

  • Tracers
  • Box esp
  • Name Esp

Tested with

ADVERTISEMENTREMOVE ADS
119 Lines • 3.49 KiB
Verified
Raw
--// super trash RIVALS esp
local settings = {
enabled = true,
teamCheck = false,
}
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local wtf = {}
function esp(player)
if not settings.enabled then return end
if settings.teamCheck and player.Team == Players.LocalPlayer.Team then return end
if player == Players.LocalPlayer then return end
local character = player.Character or player.CharacterAdded:Wait()
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
local Box = Drawing.new("Square")
Box.Color = Color3.new(1, 0, 0)
Box.Thickness = 2
Box.Transparency = 1
Box.Filled = false
local tracer = Drawing.new("Line")
tracer.Color = Color3.new(1, 0, 0)
tracer.Thickness = 1
tracer.Transparency = 1
local name = Drawing.new("Text")
name.Text = player.Name
name.Color = Color3.new(1, 1, 1)
name.Size = 20
name.Center = true
name.Outline = true
name.Transparency = 1
wtf[player] = {box = Box, tracer = tracer, name = name}
local function loop()
if not player.Character or not player.Character:FindFirstChild("HumanoidRootPart") then
Box.Visible = false
tracer.Visible = false
name.Visible = false
return
end
local hrpPosition, onScreen = workspace.CurrentCamera:WorldToViewportPoint(humanoidRootPart.Position)
if onScreen then
local top = workspace.CurrentCamera:WorldToViewportPoint(humanoidRootPart.Position + Vector3.new(0, 3, 0))
local bottom = workspace.CurrentCamera:WorldToViewportPoint(humanoidRootPart.Position - Vector3.new(0, 3, 0))
local size = Vector2.new(math.abs(top.X - bottom.X) * 1.5, math.abs(top.Y - bottom.Y) * 1.5)
Box.Size = size
Box.Position = Vector2.new(hrpPosition.X - size.X / 2, hrpPosition.Y - size.Y / 2)
Box.Visible = true
tracer.From = Vector2.new(workspace.CurrentCamera.ViewportSize.X / 2, workspace.CurrentCamera.ViewportSize.Y)
tracer.To = Vector2.new(hrpPosition.X, hrpPosition.Y)
tracer.Visible = true
name.Position = Vector2.new(hrpPosition.X, hrpPosition.Y - size.Y / 2 - 20)
name.Visible = true
else
Box.Visible = false
tracer.Visible = false
name.Visible = false
end
end
RunService.RenderStepped:Connect(loop)
end
function remove(player)
if wtf[player] then
wtf[player].box:Remove()
wtf[player].tracer:Remove()
wtf[player].name:Remove()
wtf[player] = nil
end
end
function add(player)
player.CharacterAdded:Connect(function(character)
esp(player)
end)
player.CharacterRemoving:Connect(function(character)
remove(player)
end)
if player.Character then
esp(player)
end
end
Players.PlayerAdded:Connect(add)
for _, player in pairs(Players:GetPlayers()) do
add(player)
end
function toggle(state)
settings.enabled = state
if not state then
for _, player in pairs(Players:GetPlayers()) do
remove(player)
end
else
for _, player in pairs(Players:GetPlayers()) do
if player.Character then
esp(player)
end
end
end
end
function this_is_stupid(state)
settings.teamCheck = state
end
ADVERTISEMENTREMOVE ADS

Comments

0 comments
to add a comment
Loading comments
ADVERTISEMENTREMOVE ADS