Advertisement
Guest User

Grab Script Roblox (Server)

a guest
Mar 16th, 2022
8,459
1
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 1 0
  1. local Players = game:GetService("Players")
  2. local RunService = game:GetService("RunService")
  3. local network = script.Parent.Network
  4.  
  5. local character = script:FindFirstAncestorWhichIsA("Model")
  6. local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
  7. local humanoid = character:WaitForChild("Humanoid")
  8. local player = Players:GetPlayerFromCharacter(character)
  9. local currentObject = nil
  10.  
  11. local range = script.Parent.Range.Value
  12.  
  13. function canSetNetworkOwnership(part)
  14. if part.Anchored then
  15. return false
  16. end
  17. local model = part:FindFirstAncestorWhichIsA("Model")
  18. if model and model:FindFirstChildWhichIsA("Humanoid") then
  19. return false
  20. end
  21. return part:IsDescendantOf(workspace)
  22. end
  23.  
  24. function isWithinRange(object)
  25. return (object.Position - humanoidRootPart.Position).Magnitude < (range * 1.25 + 5)
  26. end
  27.  
  28. local conn = network.OnServerEvent:Connect(function(firer, object)
  29. if firer == player then
  30. if currentObject then
  31. currentObject:SetNetworkOwnershipAuto()
  32. end
  33. currentObject = nil
  34.  
  35. if object and object:IsA("BasePart") and isWithinRange(object) and canSetNetworkOwnership(object) then
  36. currentObject = object
  37. currentObject:SetNetworkOwner(player)
  38. end
  39. end
  40. end)
  41.  
  42. local dstCheck = RunService.Heartbeat:Connect(function()
  43. if currentObject and ((not isWithinRange(currentObject)) or (not currentObject:IsDescendantOf(workspace))) then
  44. currentObject:SetNetworkOwnershipAuto()
  45. currentObject = nil
  46. end
  47. end)
  48.  
  49. humanoid.Died:Connect(function()
  50. conn:Disconnect()
  51. dstCheck:Disconnect()
  52. if currentObject then
  53. currentObject:SetNetworkOwnershipAuto()
  54. end
  55. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement