Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- localscript = script.TwoDScript
- function GetMass(object)
- local mass = 0
- if pcall(function() return object:GetMass() end) then
- mass = object:GetMass()
- end
- for _,child in pairs(object:GetChildren()) do
- mass = mass + GetMass(child)
- end
- return mass
- end
- function onEntered(newPlayer)
- wait()
- p = game.Players:playerFromCharacter(newPlayer)
- if p ~= nil then
- if p:FindFirstChild(localscript.Name) == nil then
- local torso = newPlayer.Torso
- local bp = Instance.new("BodyPosition")
- bp.Name = "TwoD"
- bp.position = torso.Position
- bp.P = 1000000
- bp.D = 1000
- bp.maxForce = Vector3.new(0, 0, 1000000)
- bp.Parent = torso
- local bf = Instance.new("BodyForce")
- bf.force = Vector3.new(0, 100*GetMass(newPlayer), 0)
- bf.Parent = torso
- newPlayer.Humanoid.WalkSpeed = 24
- newlcl = localscript:Clone()
- newlcl.Disabled = false
- newlcl.Parent = newPlayer
- newPlayer.DescendantAdded:connect(function()
- bf.force = Vector3.new(0, 100*GetMass(newPlayer), 0)
- end)
- newPlayer.DescendantRemoving:connect(function()
- bf.force = Vector3.new(0, 100*GetMass(newPlayer), 0)
- end)
- end
- end
- end
- -- run a check once the script is loaded to see if players don't have the localscript
- local children = game.Workspace:GetChildren()
- for i = 1, #children do
- onEntered(children[i])
- end
- game.Players.ChildAdded:connect(onEntered)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement