Run it
Copy the script and paste it into your executor.
Players = :()
TweenService = :()
LocalPlayer = Players.LocalPlayer
ATTRIBUTE =
gui = .()
gui.Name =
gui.ResetOnSpawn =
gui.Parent = LocalPlayer:()
holder = .()
holder.BackgroundTransparency =
holder.AnchorPoint = .(, )
holder.Position = .(, -, , )
holder.Size = .(, , , -)
holder.Parent = gui
layout = .()
layout.Padding = .(, )
layout.SortOrder = .SortOrder.LayoutOrder
layout.Parent = holder
spectatorLabel = .()
spectatorLabel.Name =
spectatorLabel.AnchorPoint = .(, )
spectatorLabel.Position = .(, , , )
spectatorLabel.Size = .(, , , )
spectatorLabel.BackgroundColor3 = .(, , )
spectatorLabel.BackgroundTransparency =
spectatorLabel.BorderSizePixel =
spectatorLabel.Font = .Font.GothamMedium
spectatorLabel.TextSize =
spectatorLabel.TextColor3 = .(, , )
spectatorLabel.TextXAlignment = .TextXAlignment.Left
spectatorLabel.TextTruncate = .TextTruncate.AtEnd
spectatorLabel.Text =
spectatorLabel.Parent = gui
.(, spectatorLabel).CornerRadius = .(, )
labelPadding = .(, spectatorLabel)
labelPadding.PaddingLeft = .(, )
labelPadding.PaddingRight = .(, )
order =
(text, color, duration)
duration = duration
order +=
frame = .()
frame.LayoutOrder = order
frame.Size = .(, , , )
frame.BackgroundColor3 = .(, , )
frame.BackgroundTransparency =
frame.BorderSizePixel =
frame.Parent = holder
.(, frame).CornerRadius = .(, )
bar = .()
bar.Size = .(, , , )
bar.BackgroundColor3 = color
bar.BackgroundTransparency =
bar.BorderSizePixel =
bar.Parent = frame
.(, bar).CornerRadius = .(, )
label = .()
label.BackgroundTransparency =
label.Position = .(, , , )
label.Size = .(, -, , )
label.Font = .Font.GothamMedium
label.TextSize =
label.TextColor3 = .(, , )
label.TextTransparency =
label.TextXAlignment = .TextXAlignment.Left
label.TextTruncate = .TextTruncate.AtEnd
label.Text = text
label.Parent = frame
info = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
TweenService:(frame, info, { BackgroundTransparency = }):()
TweenService:(bar, info, { BackgroundTransparency = }):()
TweenService:(label, info, { TextTransparency = }):()
.(duration, ()
out = TweenInfo.()
TweenService:(frame, out, { BackgroundTransparency = }):()
TweenService:(bar, out, { BackgroundTransparency = }):()
fade = TweenService:(label, out, { TextTransparency = })
fade:()
fade.Completed:()
frame:()
)
spectators = {}
()
names = {}
plr (spectators)
.(names, plr.Name)
.(names, )
()
names = ()
spectatorLabel.Text = .. (names ~= names )
(plr)
plr == LocalPlayer
isSpectatingMe = plr:(ATTRIBUTE) == LocalPlayer.UserId
isSpectatingMe spectators[plr]
spectators[plr] =
()
(plr.DisplayName .. , .(, , ))
isSpectatingMe spectators[plr]
spectators[plr] =
()
(plr.DisplayName .. , .(, , ))
(plr)
plr == LocalPlayer
plr:(ATTRIBUTE):(()
(plr)
)
(plr)
_, plr (Players:())
(plr)
Players.PlayerAdded:(trackPlayer)
Players.PlayerRemoving:((plr)
spectators[plr]
spectators[plr] =
()
(plr.DisplayName .. , .(, , ))
)works on ANY executor title is self explanatory, it shows you live who is spectating you and when they stop, instant effect extremely simple method ** discovered by catsaken, anybody who reposts this is a SKID! **
Stay safe
Never paste your .ROBLOSECURITY cookie anywhere, and use an alt account with scripts.

Universal