-- Settings local Settings = { Mobs = { -- Ghoul's ["High Rank Aogiri Member"] = true, ["Mid Rank Aogiri Member"] = true, ["Low Rank Aogiri Member"] = true, -- CCG's ["Rank 1 Investigator"] = true, ["Rank 2 Investigator"] = true, ["First Class Investigator"] = true, -- Mob's ["Human"] = true, ["Athlete"] = true }, InstantKill = true, Stage = 1, Key = "O", Speed = 30 } -- Objects local TweenService = game:GetService("TweenService") local UserInputService = game:GetService("UserInputService") local Workspace = game:GetService("Workspace") local CoreGui = game:GetService("CoreGui") local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local Camera = Workspace.CurrentCamera local Mouse = LocalPlayer:GetMouse() local Input = "\230\147\141\228\189\160\240\159\146\166\240\159\146\148\240\159\141\145\240\159\145\140\240\159\146\166\230\147\141\228\189\160\240\159\146\166\240\159\146\148\240\159\141\145\240\159\145\140\240\159\146\166\240\159\146\148\240\159\141\145\240\159\145\140\240\159\146\166\240\159\146\148\240\159\141\145\240\159\145\140\240\159\146\148\240\159\141\145\240\159\145\140\240\159\146\166\240\159\146\148\240\159\141\145\240\159\145\140" local Toggle = false local Timing = os.clock or tick local Start = Timing() local SpellInteger = { [1] = "One", [2] = "Two", [3] = "Three", [4] = "Four", [5] = "Five", [6] = "Six" } -- Functions local Teleport = function(CFrame) repeat wait() until not LocalPlayer.PlayerGui:FindFirstChild("SpawnSelection") if LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then local Time = (LocalPlayer.Character.HumanoidRootPart.Position - CFrame.Position).Magnitude / (Settings.Speed * 10) if (LocalPlayer.Character.HumanoidRootPart.Position - CFrame.Position).Magnitude < 10 then LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame else TweenService:Create(LocalPlayer.Character.HumanoidRootPart, TweenInfo.new(Time, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {CFrame = CFrame}):Play() wait(Time) end end end local WaitForDescendantWhichIsA = function(Parent, Class, Time) Start = Timing() repeat wait() if Timing() - Start > Time then return end for _,v in pairs(Parent:GetDescendants()) do if v:IsA(Class) then return v end end until nil end local FilterSafeZone = function(Parent) for _,v in pairs(Workspace.SafeZones:GetChildren()) do local FilterPart = Instance.new("Part", Workspace) FilterPart.Size = v.Size + Vector3.new(0,1,0) FilterPart.Position = v.Position FilterPart.Anchored = true FilterPart.CanCollide = false FilterPart.Transparency = 1 local LowerBound = FilterPart.CFrame * CFrame.new(FilterPart.Size.X/2, 0, FilterPart.Size.Z/2) local UpperBound = FilterPart.CFrame * CFrame.new(-FilterPart.Size.X/2, 0, -FilterPart.Size.Z/2) local CounterRegion = Region3.new(Vector3.new(math.min(LowerBound.X, UpperBound.X), FilterPart.Size.Y/2 + LowerBound.Y, math.min(LowerBound.Z, UpperBound.Z)), Vector3.new(math.max(LowerBound.X, UpperBound.X), FilterPart.Size.Y/2 + LowerBound.Y, math.max(LowerBound.Z, UpperBound.Z))) local Parts = Workspace:FindPartsInRegion3(CounterRegion, FilterPart, math.huge) for _,v in pairs(Parts) do if v:IsDescendantOf(Parent) then return true end end end end -- Start LocalPlayer.Character:BreakJoints() local StageConnection = LocalPlayer.CharacterAdded:Connect(function() repeat wait() until not LocalPlayer.PlayerGui:FindFirstChild("SpawnSelection") LocalPlayer.Character:WaitForChild("Remotes"):WaitForChild("KeyEvent"):FireServer(Input, SpellInteger[Settings.Stage], "Down") end) UserInputService.InputBegan:Connect(function(Input) if string.lower(Input.KeyCode.Name) == string.lower(Settings.Key) then StageConnection:Disconnect() Toggle = true end end) repeat wait() for _,a in pairs(Workspace.NPCSpawns:GetDescendants()) do if Settings.Mobs[a.Name] == true then local Mob, Corpse, Connection, HealthConnection = a, nil, nil, nil Connection = Mob.ChildAdded:Connect(function(Child) if string.find(Child.Name, "Corpse") then Corpse = Child Connection:Disconnect() end end) if Mob:FindFirstChild("Humanoid") and not FilterSafeZone(Mob) then HealthConnection = Mob.Humanoid:GetPropertyChangedSignal("Health"):Connect(function() if Settings.InstantKill then -- for i = 1, 20 do Mob.Humanoid.Health = 0 -- end end end) repeat wait() pcall(function() Teleport(Mob.HumanoidRootPart.CFrame + Mob.HumanoidRootPart.CFrame.LookVector * -4) LocalPlayer.Character:WaitForChild("Remotes"):WaitForChild("KeyEvent"):FireServer(Input, "Mouse1", "Down", Mob.HumanoidRootPart.CFrame, Camera.CFrame, LocalPlayer.Character.HumanoidRootPart.Position) end) until Corpse or Toggle if Toggle then return end local Click = WaitForDescendantWhichIsA(Corpse, "ClickDetector", 10) if Click then repeat wait() Teleport(Corpse.HumanoidRootPart.CFrame) fireclickdetector(Click) until Corpse:FindFirstChild("UpperTorso").Transparency ~= 0 end HealthConnection:Disconnect() end end end until Toggle