Advertisement
KevinnT

aimbot script

Apr 6th, 2021
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.33 KB | None | 0 0
  1. -- Remember To Like And Subscribe For More :) -Dev Z Scripts
  2. -- Aimbot
  3. local Players = game:GetService("Players")
  4. local LocalPlayer = Players.LocalPlayer
  5. local mouse = LocalPlayer:GetMouse()
  6. local Camera = workspace.CurrentCamera
  7. local Debris = game:GetService("Debris")
  8. local UserInputService = game:GetService("UserInputService")
  9. local target = false
  10. local RunService = game:GetService("RunService")
  11.  
  12.  
  13. getfenv().lock = "Head" -- Head or Hitbox or Random
  14.  
  15. fov = 250;
  16. local fovCircle = true;
  17. local st = tonumber(tick());
  18. warn("Loading script...")
  19.  
  20. if fovCircle then
  21.     function createcircle()
  22.         local a=Drawing.new('Circle');a.Transparency=1;a.Thickness=1.5;a.Visible=true;a.Color=Color3.fromRGB(0,255,149);a.Filled=false;a.Radius=fov;
  23.         return a;
  24.     end;  
  25.     local fovc = createcircle();
  26.     spawn(function()
  27.         RunService:BindToRenderStep("FovCircle",1,function()
  28.             fovc.Position = Vector2.new(mouse.X,mouse.Y)
  29.         end);
  30.     end);
  31. end;
  32.  
  33. function isFfa()
  34.     local am = #Players:GetChildren();
  35.     local amm = 0;
  36.     for i , v in pairs(Players:GetChildren()) do
  37.         if v.Team == LocalPlayer.Team then
  38.             amm = amm + 1;
  39.         end;
  40.     end;
  41.     return am == amm;
  42. end;
  43. function getnearest()
  44.     local nearestmagnitude = math.huge
  45.     local nearestenemy = nil
  46.     local vector = nil
  47.     local ffa = isFfa();
  48.     for i,v in next, Players:GetChildren() do
  49.         if ffa == false and v.Team ~= LocalPlayer.Team or ffa == true then
  50.             if v.Character and  v.Character:FindFirstChild("HumanoidRootPart") and v.Character:FindFirstChild("Humanoid") and v.Character.Humanoid.Health > 0 then
  51.                 local vector, onScreen = Camera:WorldToScreenPoint(v.Character["HumanoidRootPart"].Position)
  52.                 if onScreen then
  53.                     local ray = Ray.new(
  54.                     Camera.CFrame.p,
  55.                     (v.Character["Head"].Position-Camera.CFrame.p).unit*500
  56.                     )
  57.                     local ignore = {
  58.                     LocalPlayer.Character,
  59.                     }
  60.                     local hit,position,normal=workspace:FindPartOnRayWithIgnoreList(ray,ignore)
  61.                     if hit and hit:FindFirstAncestorOfClass("Model") and Players:FindFirstChild(hit:FindFirstAncestorOfClass("Model").Name)then
  62.                         local magnitude = (Vector2.new(mouse.X, mouse.Y) - Vector2.new(vector.X, vector.Y)).magnitude
  63.                         if magnitude < nearestmagnitude and magnitude <= fov then
  64.                             nearestenemy = v
  65.                             nearestmagnitude = magnitude
  66.                         end
  67.                     end
  68.                 end
  69.             end
  70.         end
  71.     end
  72.     return nearestenemy
  73. end
  74.  
  75.  
  76. local meta = getrawmetatable(game)
  77. setreadonly(meta, false)
  78. local oldNamecall = meta.__namecall
  79. meta.__namecall = newcclosure(function(...)
  80.    
  81.     local method = getnamecallmethod()
  82.     local args = {...}
  83.     if string.find(method,'Ray') then
  84.         if target then
  85.             if args[1].Name ~= "Workspace" then
  86.                 print(args[1])
  87.             end;
  88.             args[2] = Ray.new(workspace.CurrentCamera.CFrame.Position, (target.Position + Vector3.new(0,(workspace.CurrentCamera.CFrame.Position-target.Position).Magnitude/500,0) - workspace.CurrentCamera.CFrame.Position).unit * 5000)
  89.         end
  90.     end
  91.     return oldNamecall(unpack(args))
  92. end)
  93.  
  94. warn("Script loaded!\nTime taken: "..math.abs(tonumber(tick())-st))
  95. RunService:BindToRenderStep("SilentAim",1,function()
  96.     if UserInputService:IsMouseButtonPressed(0) and Players.LocalPlayer.Character and Players.LocalPlayer.Character:FindFirstChild("Humanoid") and Players.LocalPlayer.Character.Humanoid.Health > 0 then
  97.         local enemy = getnearest()
  98.         if enemy and enemy.Character and enemy.Character:FindFirstChild("Humanoid") and enemy.Character.Humanoid.Health > 0 then                
  99.             local vector, onScreen = Camera:WorldToScreenPoint(enemy.Character["Head"].Position)
  100.             local head = (Vector2.new(mouse.X, mouse.Y) - Vector2.new(vector.X, vector.Y)).magnitude
  101.             local vector, onScreen = Camera:WorldToScreenPoint(enemy.Character["HumanoidRootPart"].Position)
  102.             local hitbox = (Vector2.new(mouse.X, mouse.Y) - Vector2.new(vector.X, vector.Y)).magnitude
  103.             if head <= hitbox then
  104.                 magnitude = head
  105.             else
  106.                 magnitude = hitbox;
  107.             end;
  108.             if getfenv().lock == "Head" then
  109.                 target = workspace[enemy.Name]["Head"]
  110.             else
  111.                 if getfenv().lock == "Random" then
  112.                     if magnitude == hitbox then
  113.                         target = workspace[enemy.Name]["HumanoidRootPart"];
  114.                     else
  115.                         target = workspace[enemy.Name]["Head"]
  116.                     end;
  117.                 else
  118.                     target = workspace[enemy.Name]["HumanoidRootPart"];
  119.                 end;
  120.  
  121.             end;
  122.         else
  123.             target = nil
  124.         end
  125.     end
  126. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement