Run it
Copy the script and paste it into your executor.
Players = :()
UserInputService = :()
TweenService = :()
player = Players.LocalPlayer
flashlight
settings = {
color = .(,,),
range = ,
angle = ,
brightness = ,
enabled = ,
keybind = .KeyCode.F
}
waitingForKey =
().FlashlightUI
().FlashlightUI:()
(character)
head = character:()
_, v (head:())
v:()
v:()
flashlight = .()
flashlight.Parent = head
flashlight.Color = settings.color
flashlight.Range = settings.range
flashlight.Angle = settings.angle
flashlight.Brightness = settings.brightness
flashlight.Enabled = settings.enabled
player.Character
(player.Character)
player.CharacterAdded:(setupCharacter)
(newColor)
settings.color = newColor
flashlight
flashlight.Color = newColor
player.CharacterAdded:((char)
.()
head = char:()
light = head:()
light
light.Color = settings.color
)
_, data (stageCache {})
data.light
data.light.Color = newColor
data.highlight
data.highlight.FillColor = newColor
gui = .()
gui.Name =
gui.ResetOnSpawn =
gui.Parent = player:()
().FlashlightUI = gui
settingsButton = .()
settingsButton.Size = .(,,,)
settingsButton.Position = .(,,,)
settingsButton.Text =
settingsButton.Parent = gui
container = .()
container.Size = .(,,,)
container.Position = .(,,,)
container.BackgroundColor3 = .(,,)
container.Visible =
container.Parent = gui
openPos = .(,,,)
closedPos = .(-,,,)
()
container.Visible =
container.Position = closedPos
TweenService:(container, TweenInfo.(), {Position = openPos}):()
()
t = TweenService:(container, TweenInfo.(), {Position = closedPos})
t:()
t.Completed:(()
container.Visible =
)
menuOpen =
settingsButton.MouseButton1Click:(()
menuOpen = menuOpen
menuOpen () ()
)
(frame)
dragging =
start, pos
frame.InputBegan:((i)
i.UserInputType == .UserInputType.MouseButton1
i.UserInputType == .UserInputType.Touch
dragging =
start = i.Position
pos = frame.Position
i.Changed:(()
i.UserInputState == .UserInputState.End
dragging =
)
)
UserInputService.InputEnded:((i)
i.UserInputType == .UserInputType.MouseButton1
i.UserInputType == .UserInputType.Touch
dragging =
)
UserInputService.InputChanged:((i)
dragging i.UserInputType == .UserInputType.MouseMovement
d = i.Position - start
frame.Position = .(
pos.X.Scale, pos.X.Offset + d.X,
pos.Y.Scale, pos.Y.Offset + d.Y
)
)
(settingsButton)
(container)
(t,y)
b = .()
b.Size = .(,-,,)
b.Position = .(,,,y)
b.PlaceholderText = t
b.ClearTextOnFocus =
b.Parent = container
b
(t,y)
b = .()
b.Size = .(,-,,)
b.Position = .(,,,y)
b.Text = t
b.Parent = container
b
toggleBtn = (, )
colorBox = (, )
applyColor = (, )
rangeBox = (, )
applyRange = (, )
angleBox = (, )
applyAngle = (, )
brightnessBox = (, )
applyBrightness = (, )
keybindBtn = (, )
brightnessApplyBox = (, )
brightnessApplyBtn = (, )
colorApplyBox = (, )
colorApplyBtn = (, )
targetBox = (, )
stageBtn = (, )
stageCache = {}
(plr)
char = plr.Character
char
head = char:()
head
light = .()
light.Parent = head
light.Face = .NormalId.Top
light.Angle =
light.Range =
light.Brightness =
light.Color = settings.color
highlight = .()
highlight.Parent = char
highlight.FillColor = settings.color
stageCache[plr] = {light = light, highlight = highlight}
(plr)
data = stageCache[plr]
data
data.light data.light:()
data.highlight data.highlight:()
stageCache[plr] =
stageBtn.MouseButton1Click:(()
name = targetBox.Text
target = Players:(name)
target
stageCache[target]
(target)
(target)
)
()
flashlight
settings.enabled = settings.enabled
flashlight.Enabled = settings.enabled
toggleBtn.Text = settings.enabled
UserInputService.InputBegan:((input, gp)
gp
waitingForKey
input.KeyCode ~= .KeyCode.Unknown
settings.keybind = input.KeyCode
waitingForKey =
keybindBtn.Text = .. settings.keybind.Name
input.KeyCode == settings.keybind
()
)
keybindBtn.MouseButton1Click:(()
waitingForKey =
keybindBtn.Text =
)
toggleBtn.MouseButton1Click:(toggleFlashlight)
applyColor.MouseButton1Click:(()
r,g,b = colorBox.Text:()
r,g,b = (r),(g),(b)
r g b
(.(r,g,b))
)
applyRange.MouseButton1Click:(()
v = (rangeBox.Text)
v
settings.range = v
flashlight flashlight.Range = v
)
applyAngle.MouseButton1Click:(()
v = (angleBox.Text)
v
settings.angle = v
flashlight flashlight.Angle = v
)
applyBrightness.MouseButton1Click:(()
v = (brightnessBox.Text)
v
settings.brightness = v
flashlight flashlight.Brightness = v
)
brightnessApplyBtn.MouseButton1Click:(()
v = (brightnessApplyBox.Text)
v
settings.brightness = v
flashlight flashlight.Brightness = v
)
colorApplyBtn.MouseButton1Click:(()
r,g,b = colorApplyBox.Text:()
r,g,b = (r), (g), (b)
r g b
(.(r,g,b))
)flashlight made with ai

Universal