Advertisement
Parellel_X

Untitled

Jul 7th, 2020
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.39 KB | None | 0 0
  1. --[[
  2. EzAimbot apart of EzLibrary
  3. Developed by ToddDev
  4. Skid to your hearts content. That's what it's meant for!
  5. ]]--
  6.  
  7. --// Container
  8.  
  9. local EzAimbot = {}
  10.  
  11. --// Internal
  12.  
  13. EzAimbot.__Internals = {}
  14. EzAimbot.__Internals.MainLoop = nil
  15. EzAimbot.__Internals.Camera = workspace.CurrentCamera
  16. EzAimbot.__Internals.Viewport = EzAimbot.__Internals.Camera.ViewportSize
  17. EzAimbot.__Internals.Players = game:GetService("Players")
  18. EzAimbot.__Internals.LocalPlayer = EzAimbot.__Internals.Players.LocalPlayer
  19. EzAimbot.__Internals.Character = EzAimbot.__Internals.LocalPlayer.Character
  20. EzAimbot.__Internals.Head = EzAimbot.__Internals.Character.Head
  21. EzAimbot.__Internals.Mouse = EzAimbot.__Internals.LocalPlayer:GetMouse()
  22. EzAimbot.__Internals.FOV = nil
  23. EzAimbot.__Internals.RunService = game:GetService("RunService")
  24. EzAimbot.__Internals.InputService = game:GetService("UserInputService")
  25. EzAimbot.__Internals.MousePosition = function()
  26. return Vector2.new(EzAimbot.__Internals.Mouse.X,EzAimbot.__Internals.Mouse.Y)
  27. end
  28. EzAimbot.__Internals.ClosestPlayer = function(friendlyfire) -- Most of this stuff was ripped right out of my upcoming hub
  29. local MousePos = EzAimbot.__Internals.MousePosition()
  30. local Radius = EzAimbot.__Internals.FOV.Radius
  31. local Closest = math.huge
  32. local Target = nil
  33. local function HandleTeam(player)
  34. local Team = EzAimbot.__Internals.LocalPlayer.Team
  35. local Result = true
  36. if player.Team == Team and friendlyfire then
  37. Result = true
  38. elseif player.Team == Team and friendlyfire == false then
  39. Result = false
  40. else
  41. Result = true
  42. end
  43. return Result
  44. end
  45. for k,v in pairs(EzAimbot.__Internals.Players:GetPlayers()) do
  46. pcall(function()
  47. if HandleTeam(v) then
  48. if v.Character:FindFirstChild("Head") and v ~= EzAimbot.__Internals.LocalPlayer then
  49. local Point,OnScreen = EzAimbot.__Internals.Camera:WorldToScreenPoint(v.Character.Head.Position)
  50. if OnScreen and #EzAimbot.__Internals.Camera:GetPartsObscuringTarget({EzAimbot.__Internals.Head.Position,v.Character.Head.Position},{EzAimbot.__Internals.Character,v.Character}) == 0 then
  51. local Distance = (Vector2.new(Point.X,Point.Y) - EzAimbot.__Internals.MousePosition()).magnitude
  52. if Distance < math.min(Radius,Closest) then
  53. Closest = Distance
  54. Target = v
  55. end
  56. end
  57. end
  58. end
  59. end)
  60. end
  61. return Target
  62. end
  63. EzAimbot.__Internals.RefreshInternals = function()
  64. EzAimbot.__Internals.Camera = workspace.CurrentCamera
  65. EzAimbot.__Internals.LocalPlayer = EzAimbot.__Internals.Players.LocalPlayer
  66. EzAimbot.__Internals.Character = EzAimbot.__Internals.LocalPlayer.Character
  67. EzAimbot.__Internals.Head = EzAimbot.__Internals.Character.Head
  68. end
  69.  
  70. --// Main functions
  71.  
  72. EzAimbot.Disable = function()
  73. if EzAimbot.__Internals.MainLoop then
  74. EzAimbot.__Internals.MainLoop:Disconnect()
  75. EzAimbot.__Internals.MainLoop = nil
  76. end
  77. if EzAimbot.__Internals.FOV then
  78. EzAimbot.__Internals.FOV:Remove()
  79. end
  80. EzAimbot.__Internals.RefreshInternals()
  81. end
  82.  
  83. EzAimbot.Enable = function(showfov,fovconfig,key,friendlyfire)
  84. assert(typeof(showfov)=="boolean","EzAimbot.Enable | Expected Boolean as argument #1")
  85. assert(typeof(fovconfig)=="table","EzAimbot.Enable | Expected Table as argument #2")
  86. assert(fovconfig["Size"],"EzAimbot.Enable | Expected Size in argument #2")
  87. assert(fovconfig["Sides"],"EzAimbot.Enable | Expected Sides in argument #2")
  88. assert(fovconfig["Color"],"EzAimbot.Enable | Expected Color in argument #2")
  89. assert(type(fovconfig["Size"])=="number","EzAimbot.Enable | Expected Size in argument #2")
  90. assert(type(fovconfig["Sides"])=="number","EzAimbot.Enable | Expected Sides in argument #2")
  91. assert(typeof(fovconfig["Color"])=="Color3","EzAimbot.Enable | Expected Color in argument #2")
  92. assert(type(key)=="string","EzAimbot.Enable | Expected String as argument #3")
  93. assert(type(friendlyfire)=="boolean","EzAimbot.Enable | Expected Boolean as argument #4")
  94. local Size = fovconfig["Size"]
  95. local Sides = fovconfig["Sides"]
  96. local Color = fovconfig["Color"]
  97. if showfov then
  98. EzAimbot.__Internals.FOV = Drawing.new("Circle")
  99. local FOV = EzAimbot.__Internals.FOV
  100. FOV.NumSides = Sides
  101. FOV.Position = EzAimbot.__Internals.MousePosition()
  102. FOV.Radius = Size
  103. FOV.Thickness = 2
  104. FOV.Radius = Size
  105. FOV.Color = Color
  106. FOV.Visible = true
  107. end
  108. EzAimbot.__Internals.MainLoop = EzAimbot.__Internals.RunService.RenderStepped:Connect(function()
  109. if EzAimbot.__Internals.FOV then
  110. EzAimbot.__Internals.FOV.Position = EzAimbot.__Internals.MousePosition()
  111. end
  112. if EzAimbot.__Internals.InputService:IsKeyDown(Mouse.[key]) then
  113. local ClosestPlayer = EzAimbot.__Internals.ClosestPlayer(friendlyfire)
  114. if ClosestPlayer then
  115. EzAimbot.__Internals.Camera.CFrame = CFrame.new(EzAimbot.__Internals.Camera.CFrame.p,ClosestPlayer.Character.Head.CFrame.p)
  116. end
  117. EzAimbot.__Internals.RefreshInternals()
  118. end
  119. end)
  120. end
  121.  
  122. return EzAimbot
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement