
Key Required

local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local UIS = game:GetService("UserInputService")
local player = Players.LocalPlayer
local enemiesFolder = workspace:WaitForChild("Enemies")
local network = ReplicatedStorage:WaitForChild("WeaponsSystem"):WaitForChild("Network"):WaitForChild("WeaponHit")
local running = false
local function fireOnce()
local char = player.Character or player.CharacterAdded:Wait()
local backpack = player:WaitForChild("Backpack")
local tool = char:FindFirstChildWhichIsA("Tool") or backpack:FindFirstChildWhichIsA("Tool")
if not tool then return end
local originPart = char.PrimaryPart or tool:FindFirstChild("Handle") or char:FindFirstChildWhichIsA("BasePart")
if not originPart then return end
local originPos = originPart.Position
local pidCounter = 0
for _, enemy in ipairs(enemiesFolder:GetChildren()) do
local head = enemy:FindFirstChild("Head")
local humanoid = enemy:FindFirstChild("Humanoid")
if head and humanoid and humanoid.Health > 0 then
pidCounter += 1
local targetPos = head.Position
local dir = (targetPos - originPos)
local dist = dir.Magnitude
if dist > 0 then
local n = dir.Unit
local args = {
tool,
{
p = vector.create(targetPos.X, targetPos.Y, targetPos.Z),
pid = pidCounter,
part = head,
d = dist,
maxDist = dist + 0.001,
h = humanoid,
n = vector.create(n.X, n.Y, n.Z),
m = Enum.Material.Plastic,
t = 0.5,
targetsHit = 1,
sid = 80
}
}
network:FireServer(unpack(args))
end
end
end
end
task.spawn(function()
while true do
if running then
fireOnce()
task.wait(0.08)
else
task.wait(0.1)
end
end
end)
local gui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui"))
gui.ResetOnSpawn = false
local frame = Instance.new("Frame", gui)
frame.Size = UDim2.new(0, 160, 0, 80)
frame.Position = UDim2.new(0.4, 0, 0.4, 0)
frame.BackgroundColor3 = Color3.fromRGB(30,30,30)
local btn = Instance.new("TextButton", frame)
btn.Size = UDim2.new(1, -20, 0, 40)
btn.Position = UDim2.new(0, 10, 0.5, -20)
btn.Text = "OFF"
btn.BackgroundColor3 = Color3.fromRGB(170,0,0)
btn.TextColor3 = Color3.new(1,1,1)
btn.MouseButton1Click:Connect(function()
running = not running
btn.Text = running and "ON" or "OFF"
btn.BackgroundColor3 = running and Color3.fromRGB(0,170,0) or Color3.fromRGB(170,0,0)
end)
local dragging, dragStart, startPos
frame.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPos = frame.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
UIS.InputChanged:Connect(function(input)
if dragging then
local delta = input.Position - dragStart
frame.Position = UDim2.new(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
end
end)No comments yet for this script.
