SansjustSans2

roblox ragdoll realism script

Aug 4th, 2020
412
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- i converted a living ragdoll model to player lol
  2. -- for some reason this executes on everyone when using serverside and void script builder
  3. script.Name = "RobloxAdvanced"
  4. if _G.RobloxAdvanced ~= nil then
  5.  pcall(function() _G.RobloxAdvanced.Disable() end)
  6.  wait(0.5)
  7.  _G.RobloxAdvanced = nil
  8.  wait(0.5)
  9. end
  10. _G.RobloxAdvanced = {}
  11. _G.RobloxAdvanced.Instance = script
  12. _G.RobloxAdvanced.Connections = {}
  13. _G.RobloxAdvanced.RagdollOnHit = true
  14. _G.RobloxAdvanced.DamageOnHit = true
  15. _G.RobloxAdvanced.CriticalHitsEnabled = true
  16. _G.RobloxAdvanced.RagdollOnDeath = true
  17. _G.RobloxAdvanced.KeepCorpses = false
  18. _G.RobloxAdvanced.KeepCorpsesTime = 0
  19. _G.RobloxAdvanced.ShowDamage = true
  20. _G.RobloxAdvanced.BloodEnabled = false
  21. _G.RobloxAdvanced.BloodGuiEnabled = true
  22. _G.RobloxAdvanced.DeathGuiEnabled = true
  23. _G.RobloxAdvanced.SpawnGuiEnabled = true
  24. _G.RobloxAdvanced.HUDEnabled = false
  25. _G.RobloxAdvanced.HUDTimeReset = function() _G.RobloxAdvanced.HUDTimeOffset = tick() end
  26. _G.RobloxAdvanced.HUDTimeReset()
  27. _G.RobloxAdvanced.HUDRemove = function()
  28.  for _, PlayerList in pairs(game:GetService("Players"):GetChildren()) do
  29.   pcall(function() while true do PlayerList.PlayerGui.RobloxAdvancedHUD:Remove() end end)
  30.  end
  31. end
  32. _G.RobloxAdvanced.HUDShow = function()
  33.  _G.RobloxAdvanced.HUDRemove()
  34.  for _, PlayerList in pairs(game:GetService("Players"):GetChildren()) do
  35.   _G.RobloxAdvanced.HUD(PlayerList)
  36.  end
  37. end
  38. _G.RobloxAdvanced.Disable = function()
  39.  _G.RobloxAdvanced.RagdollOnHit = false
  40.  _G.RobloxAdvanced.DamageOnHit = false
  41.  _G.RobloxAdvanced.CriticalHitsEnabled = false
  42.  _G.RobloxAdvanced.RagdollOnDeath = false
  43.  _G.RobloxAdvanced.KeepCorpses = false
  44.  _G.RobloxAdvanced.ShowDamage = false
  45.  _G.RobloxAdvanced.BloodEnabled = false
  46.  _G.RobloxAdvanced.BloodGuiEnabled = false
  47.  _G.RobloxAdvanced.DeathGuiEnabled = false
  48.  _G.RobloxAdvanced.SpawnGuiEnabled = false
  49.  _G.RobloxAdvanced.HUDEnabled = false
  50.  _G.RobloxAdvanced.HUDRemove()
  51.  pcall(function() _G.RobloxAdvanced.Instance.Disabled = true end)
  52.  for _, Connection in pairs(_G.RobloxAdvanced.Connections) do
  53.   pcall(function() Connection:disconnect() end)
  54.  end
  55. end
  56. _G.RobloxAdvanced.MakeBlood = function()
  57.  local Size = math.random(10, 75) / 100
  58.  local Blood = Instance.new("Part")
  59.  Blood.Name = "Blood"
  60.  Blood.BrickColor = BrickColor.new("Bright red")
  61.  Blood.TopSurface = 0
  62.  Blood.BottomSurface = 0
  63.  Blood.FormFactor = "Custom"
  64.  Blood.Size = Vector3.new(Size, Size, Size)
  65.  Blood.CanCollide = false
  66.  Instance.new("SpecialMesh", Blood).MeshType = "Sphere"
  67.  local HasTouched = true
  68.  coroutine.wrap(function()
  69.   wait(0.09)
  70.   HasTouched = false
  71.  end)()
  72.  table.insert(_G.RobloxAdvanced.Connections, Blood.Touched:connect(function(Hit)
  73.   if Hit.Name ~= "Blood" and Hit.Name ~= "Blood Pool" then
  74.    if Hit:GetMass() < 0 and math.random(1, 5) == 1 then
  75.     Hit.BrickColor = BrickColor.new((function()
  76.      local Color = math.random(1, 2)
  77.      if Color == 1 then
  78.       return "Bright red"
  79.      elseif Color == 2 then
  80.       return "Crimson"
  81.      end
  82.     end)())
  83.    end
  84.   end
  85.   if Blood.Name == "Blood" and Hit.Name == "Blood Pool" then
  86.    Blood:Remove()
  87.   elseif Blood.Name == "Blood Pool" and Hit.Name == "Blood" then
  88.    if Blood.Size.x > math.random(5, 20) or Blood.Size.z > math.random(5, 20) then return end
  89.    local _, C0, C1, Part1 = pcall(function() return Blood.Weld.C0, Blood.Weld.C1, Blood.Weld.Part1 end)
  90.    Blood.Size = Blood.Size + Vector3.new(Hit.Size.x / 5, 0, Hit.Size.z / 5)
  91.    Blood.CFrame = Part1.CFrame * C0 * C1
  92.    if C0 ~= nil and C1 ~= nil and Part1 ~= nil then
  93.     local Weld = Instance.new("Weld", Blood)
  94.     Weld.Part0 = Blood
  95.     Weld.Part1 = Part1
  96.     Weld.C0 = C0
  97.     Weld.C1 = C1
  98.    end
  99.   elseif HasTouched == false and Hit.Name ~= "Blood" then
  100.    HasTouched = true
  101.    local NewHit, Position = Workspace:FindPartOnRay(Ray.new(Blood.Position + Vector3.new(0, 1, 0), Vector3.new(0, -3, 0)), Blood)
  102.    if NewHit ~= nil and NewHit.Anchored == true then
  103.     Blood.Size = Vector3.new(Size * 2, 0.3, Size * 2)
  104.     Blood.Name = "Blood Pool"
  105.     Blood.CFrame = CFrame.new(Position)
  106.     local Weld = Instance.new("Weld", Blood)
  107.     Weld.Part0 = Blood
  108.     Weld.Part1 = NewHit
  109.     Weld.C0 = Blood.CFrame:inverse() * CFrame.new(Position)
  110.     Weld.C1 = NewHit.CFrame:inverse() * CFrame.new(Position)
  111.    else
  112.     local Weld = Instance.new("Weld", Blood)
  113.     Weld.Part0 = Blood
  114.     Weld.Part1 = Hit
  115.     Weld.C0 = Blood.CFrame:inverse() * CFrame.new(Blood.Position)
  116.     Weld.C1 = Hit.CFrame:inverse() * CFrame.new(Blood.Position)
  117.    end
  118.   end
  119.  end))
  120.  coroutine.wrap(function()
  121.   local Size = Blood.Size
  122.   local Step = math.random(40, 100) / 1000
  123.   while Blood.Transparency < 1 do
  124.    if Blood.Name == "Blood Pool" and Size ~= Blood.Size then
  125.     Step = 0.003
  126.     Size = Blood.Size
  127.     Blood.Transparency = 0
  128.    end
  129.    Blood.Transparency = Blood.Transparency + Step
  130.    wait()
  131.   end
  132.   Blood:Remove()
  133.  end)()
  134.  return Blood
  135. end
  136. _G.RobloxAdvanced.HUD = function(Player)
  137.  if _G.RobloxAdvanced.HUDEnabled == false then return end
  138.  local PlayerGui = Player:FindFirstChild("PlayerGui")
  139.  if PlayerGui == nil then return end
  140.  coroutine.wrap(function()
  141.   while _G.RobloxAdvanced.HUDEnabled == true do
  142.    pcall(function()
  143.     PlayerGui.HealthGUI:Remove()
  144.    end)
  145.    wait()
  146.   end
  147.  end)()
  148.  local Gui = Instance.new("ScreenGui")
  149.  Gui.Name = "RobloxAdvancedHUD"
  150.  local Frame = Instance.new("Frame")
  151.  Frame.Name = "Background"
  152.  Frame.Size = UDim2.new(0, 500, 0, 15)
  153.  Frame.Position = UDim2.new(0.5, (-500 / 2), 1, -15)
  154.  Frame.BackgroundTransparency = 1
  155.  Frame.BorderSizePixel = 0
  156.  Frame.Parent = Gui
  157.  local Kills = Instance.new("TextLabel")
  158.  Kills.Name = "Kills"
  159.  Kills.Size = UDim2.new(1 / 5, 0, 1, 0)
  160.  Kills.Position = UDim2.new(0, 0, 0, 0)
  161.  Kills.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
  162.  Kills.BorderSizePixel = 1
  163.  Kills.BorderColor3 = Color3.new(1, 1, 1)
  164.  Kills.TextColor3 = Color3.new(1, 1, 1)
  165.  Kills.Parent = Frame
  166.  coroutine.wrap(function()
  167.   while true do
  168.    Kills.Text = "Kills: " ..(Player:FindFirstChild("RobloxAdvancedKills") ~= nil and Player.RobloxAdvancedKills.Value or 0)
  169.    wait(0.5)
  170.   end
  171.  end)()
  172.  Frame.Parent = Gui
  173.  local Killstreak = Instance.new("TextLabel")
  174.  Killstreak.Name = "Killstreak"
  175.  Killstreak.Size = UDim2.new(1 / 5, 0, 1, 0)
  176.  Killstreak.Position = UDim2.new(1 / 5, 0, 0, 0)
  177.  Killstreak.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
  178.  Killstreak.BorderSizePixel = 1
  179.  Killstreak.BorderColor3 = Color3.new(1, 1, 1)
  180.  Killstreak.TextColor3 = Color3.new(1, 1, 1)
  181.  Killstreak.Parent = Frame
  182.  coroutine.wrap(function()
  183.   while true do
  184.    Killstreak.Text = "Streak: " ..(Player:FindFirstChild("RobloxAdvancedKillstreak") ~= nil and Player.RobloxAdvancedKillstreak.Value or 0)
  185.    wait(0.5)
  186.   end
  187.  end)()
  188.  local Deaths = Instance.new("TextLabel")
  189.  Deaths.Name = "Deaths"
  190.  Deaths.Size = UDim2.new(1 / 5, 0, 1, 0)
  191.  Deaths.Position = UDim2.new(1 / 5 * 2, 0, 0, 0)
  192.  Deaths.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
  193.  Deaths.BorderSizePixel = 1
  194.  Deaths.BorderColor3 = Color3.new(1, 1, 1)
  195.  Deaths.TextColor3 = Color3.new(1, 1, 1)
  196.  Deaths.Parent = Frame
  197.  coroutine.wrap(function()
  198.   while true do
  199.    Deaths.Text = "Deaths: " ..(Player:FindFirstChild("RobloxAdvancedDeaths") ~= nil and Player.RobloxAdvancedDeaths.Value or 0)
  200.    wait(0.5)
  201.   end
  202.  end)()
  203.  local Health = Instance.new("TextLabel")
  204.  Health.Name = "Health"
  205.  Health.Size = UDim2.new(1 / 5, 0, 1, 0)
  206.  Health.Position = UDim2.new(1 / 5 * 3, 0, 0, 0)
  207.  Health.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
  208.  Health.BorderSizePixel = 1
  209.  Health.BorderColor3 = Color3.new(1, 1, 1)
  210.  Health.TextColor3 = Color3.new(1, 1, 1)
  211.  Health.Parent = Frame
  212.  coroutine.wrap(function()
  213.   for i = 0, math.huge, 0.5 do
  214.    if pcall(function() local _ = Player.Character.Humanoid end) == true then
  215.     if Player.Character.Humanoid.Health == math.huge or Player.Character.Humanoid.MaxHealth == math.huge then
  216.      Health.Text = "Invincible"
  217.      Health.BackgroundColor3 = Color3.new(0, 0, 0.5)
  218.     else
  219.      Health.Text = "Health: " ..math.floor(Player.Character.Humanoid.Health).. "/" ..math.floor(Player.Character.Humanoid.MaxHealth)
  220.      Health.BackgroundColor3 = Color3.new((1 - (Player.Character.Humanoid.Health / Player.Character.Humanoid.MaxHealth)) * 0.9, (Player.Character.Humanoid.Health / Player.Character.Humanoid.MaxHealth) * 0.5, 0)
  221.     end
  222.     if Player.Character:FindFirstChild("ForceField") ~= nil then
  223.      Health.BackgroundColor3 = Color3.new(((math.sin(i) + 1) / 2), 0, 1 - ((math.sin(i) + 1) / 2))
  224.     end
  225.    else
  226.     Health.Text = "Health: Nil"
  227.     Health.BackgroundColor3 = Color3.new(0, 0, 0)
  228.    end
  229.    wait(0.05)
  230.   end
  231.  end)()
  232.  local Time = Instance.new("TextLabel")
  233.  Time.Name = "Time"
  234.  Time.Size = UDim2.new(1 / 5, 0, 1, 0)
  235.  Time.Position = UDim2.new(1 / 5 * 4, 0, 0, 0)
  236.  Time.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
  237.  Time.BorderSizePixel = 1
  238.  Time.BorderColor3 = Color3.new(1, 1, 1)
  239.  Time.TextColor3 = Color3.new(1, 1, 1)
  240.  Time.Parent = Frame
  241.  coroutine.wrap(function()
  242.   while true do
  243.    local Total = tick() - _G.RobloxAdvanced.HUDTimeOffset
  244.    local Minutes = math.floor(Total / 60)
  245.    local Seconds = math.floor(Total % 60)
  246.    if string.len(Minutes) == 1 then Minutes = "0" ..Minutes end
  247.    if string.len(Seconds) == 1 then Seconds = "0" ..Seconds end
  248.    Time.Text = "Time: " ..Minutes.. ":" ..Seconds
  249.    wait(0.05)
  250.   end
  251.  end)()
  252.  Gui.Parent = PlayerGui
  253. end
  254. _G.RobloxAdvanced.HookPlayerDeath = function(Player)
  255.  table.insert(_G.RobloxAdvanced.Connections, Player.Changed:connect(function(Property)
  256.   if Property == "Character" then
  257.    if Player.Character ~= nil then
  258.     if _G.RobloxAdvanced.SpawnGuiEnabled == true then
  259.      local PlayerGui = Player:FindFirstChild("PlayerGui")
  260.      if PlayerGui == nil then return end
  261.      local Gui = Instance.new("ScreenGui")
  262.      Gui.Name = "Life"
  263.      local Frame = Instance.new("Frame")
  264.      Frame.Name = "White"
  265.      Frame.Size = UDim2.new(2, 0, 2, 0)
  266.      Frame.Position = UDim2.new(-0.5, 0, -0.5, 0)
  267.      Frame.BackgroundColor3 = Color3.new(1, 1, 1)
  268.      Frame.BackgroundTransparency = 0
  269.      Frame.Parent = Gui
  270.      Gui.Parent = PlayerGui
  271.      coroutine.wrap(function()
  272.       wait(0.1)
  273.       for i = 0, 1, 0.1 do
  274.        Frame.BackgroundColor3 = Color3.new(1, 1, 1)
  275.        wait()
  276.       end
  277.       Frame.BackgroundColor3 = Color3.new(1, 1, 1)
  278.       wait(0.3)
  279.       for i = 0, 1, 0.05 do
  280.        Frame.BackgroundTransparency = i
  281.        wait()
  282.       end
  283.       Gui:Remove()
  284.      end)()
  285.     end
  286.     _G.RobloxAdvanced.HUD(Player)
  287.    end
  288.   end
  289.  end))
  290.  _G.RobloxAdvanced.HUD(Player)
  291.  table.insert(_G.RobloxAdvanced.Connections, Player.Chatted:connect(function(Message)
  292.   if string.sub(Message, 0, 5) == "lego " then Message = string.sub(Message, 6) end
  293.   Message = Message:lower()
  294.   if Message == "throw me" or Message == "ragdoll" then
  295.    if Player.Character == nil then return end
  296.    if Player.Character:FindFirstChild("Humanoid") == nil then return end
  297.    if Player.Character:FindFirstChild("Torso") == nil then return end
  298.    Player.Character.Humanoid.Sit = true
  299.    _G.RobloxAdvanced.Ragdoll(true, Player.Character)
  300.    if Message == "throw me" then
  301.     Player.Character.Torso.Velocity = Player.Character.Torso.Velocity + (Player.Character.Torso.CFrame.lookVector * 150) + Vector3.new(0, 50, 0)
  302.    end
  303.   end
  304.  end))
  305. end
  306. _G.RobloxAdvanced.HookModelDeath = function(Character)
  307.  wait()
  308.  if Character == nil then return end
  309.  if Character:FindFirstChild("Humanoid") == nil then return end
  310.  local RagdollStatus = false
  311.  local ConnectTouched = function(Part)
  312.   if Part.Parent ~= Character then return end
  313.   pcall(function()
  314.    table.insert(_G.RobloxAdvanced.Connections, Part.Touched:connect(function(Hit)
  315.     if Hit == nil then return end
  316.     if Hit.Parent == nil then return end
  317.     if Hit.Parent ~= Character and Hit.Parent.Parent ~= Character and Hit:GetMass() > 10 then
  318.      local Velocity1 = {
  319.       math.abs(Part.Velocity.x),
  320.       math.abs(Part.Velocity.y),
  321.       math.abs(Part.Velocity.z)
  322.      }
  323.      local RotVelocity1 = {
  324.       math.abs(Part.RotVelocity.x),
  325.       math.abs(Part.RotVelocity.y),
  326.       math.abs(Part.RotVelocity.z)
  327.      }
  328.      local Velocity2 = {
  329.       math.abs(Hit.Velocity.x),
  330.       math.abs(Hit.Velocity.y),
  331.       math.abs(Hit.Velocity.z)
  332.      }
  333.      local RotVelocity2 = {
  334.       math.abs(Hit.RotVelocity.x),
  335.       math.abs(Hit.RotVelocity.y),
  336.       math.abs(Hit.RotVelocity.z)
  337.      }
  338.      if RagdollStatus == false and _G.RobloxAdvanced.RagdollOnHit == true then
  339.       for i = 1, 3 do
  340.        local Total = math.abs(Velocity1[i] - Velocity2[i])
  341.        if Total > math.random(95, 180) then
  342.         RagdollStatus = true
  343.        end
  344.       end
  345.       for i = 1, 3 do
  346.        local Total = math.abs(RotVelocity1[i] - RotVelocity2[i])
  347.        if Total > math.random(85, 140) then
  348.         RagdollStatus = true
  349.        end
  350.       end
  351.       if RagdollStatus == true then
  352.        _G.RobloxAdvanced.Ragdoll(true, Character)
  353.        if Character.Humanoid.PlatformStand == true or Character.Humanoid.Sit == false then
  354.         coroutine.wrap(function()
  355.          wait(1.8)
  356.          RagdollStatus = false
  357.         end)()
  358.        else
  359.         coroutine.wrap(function()
  360.          Character.Humanoid.PlatformStand = true
  361.          wait(0.5)
  362.          Character.Humanoid.PlatformStand = false
  363.          wait(1.8)
  364.          RagdollStatus = false
  365.         end)()
  366.        end
  367.       end
  368.      end
  369.      local Damage = 0
  370.      for i = 1, #Velocity1 do Damage = Damage + Velocity1[i] end
  371.      for i = 1, #RotVelocity1 do Damage = Damage + RotVelocity1[i] end
  372.      for i = 1, #Velocity2 do Damage = Damage + Velocity2[i] end
  373.      for i = 1, #RotVelocity2 do Damage = Damage + RotVelocity2[i] end
  374.      Damage = Damage / 60
  375.      if Damage >= 5 and _G.RobloxAdvanced.DamageOnHit == true then
  376.       pcall(function() Character.Humanoid:TakeDamage(math.floor(Damage)) end)
  377.      end
  378.     end
  379.    end))
  380.   end)
  381.  end
  382.  for _, Part in pairs(Character:GetChildren()) do ConnectTouched(Part) end
  383.  table.insert(_G.RobloxAdvanced.Connections, Character.ChildAdded:connect(function(Part) ConnectTouched(Part) end))
  384.  local OldHealth = Character.Humanoid.Health
  385.  table.insert(_G.RobloxAdvanced.Connections, Character.Humanoid.Changed:connect(function(Property)
  386.   if Property == "Health" then
  387.    local Source = nil
  388.    for _, Part in pairs(Character:GetChildren()) do
  389.     if Part:IsA("BasePart") then
  390.      if Source == nil then
  391.       Source = Part
  392.      else
  393.       if math.abs(Part.Velocity.x) + math.abs(Part.Velocity.y) + math.abs(Part.Velocity.z) > math.abs(Source.Velocity.x) + math.abs(Source.Velocity.y) + math.abs(Source.Velocity.z) then
  394.        Source = Part
  395.       end
  396.      end
  397.     end
  398.    end
  399.    if Source == nil then return end
  400.    if math.abs(Character.Humanoid.Health - OldHealth) > math.abs((Character.Humanoid.Health + 0.01 * 1.05 * Character.Humanoid.MaxHealth) - Character.Humanoid.Health) and _G.RobloxAdvanced.ShowDamage == true then
  401.     local Model = Instance.new("Model", Workspace)
  402.     Model.Name = tostring(math.floor(Character.Humanoid.Health - OldHealth))
  403.     Model.Name = Model.Name:sub(0, 1) ~= "-" and Model.Name.. "+" or Model.Name
  404.     local Damage = Instance.new("Part", Model)
  405.     Damage.Name = "Head"
  406.     Damage.BrickColor = BrickColor.new(Model.Name:match("-") and "Bright red" or "Lime green")
  407.     if (OldHealth - Character.Humanoid.Health) / Character.Humanoid.MaxHealth > 0.25 then
  408.      coroutine.wrap(function()
  409.       while Damage.Parent ~= nil do
  410.        Damage.BrickColor = BrickColor.new("New yeller")
  411.        wait()
  412.        Damage.BrickColor = BrickColor.new("Cyan")
  413.        wait()
  414.       end
  415.      end)()
  416.     end
  417.     Damage.TopSurface = 0
  418.     Damage.BottomSurface = 0
  419.     Damage.CanCollide = false
  420.     Damage.FormFactor = "Custom"
  421.     Damage.Size = (OldHealth - Character.Humanoid.Health) / Character.Humanoid.MaxHealth > 0.25 and Vector3.new(1, 1, 1) or Vector3.new(0.5, 0.5, 0.5)
  422.     Damage.CFrame = CFrame.new(Source.Position)
  423.     coroutine.wrap(function()
  424.      while Damage.Parent ~= nil do
  425.       Damage.CanCollide = false
  426.       wait()
  427.      end
  428.     end)()
  429.     local Humanoid = Instance.new("Humanoid", Model)
  430.     Humanoid.Name = "Sign"
  431.     Humanoid.MaxHealth = 0
  432.     Humanoid.Health = 0
  433.     Humanoid.WalkSpeed = 0
  434.     Humanoid.PlatformStand = true
  435.     local BodyVelocity = Instance.new("BodyVelocity", Damage)
  436.     BodyVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  437.     BodyVelocity.velocity = Vector3.new(0, 7, 0)
  438.     coroutine.wrap(function()
  439.      wait(1)
  440.      for i = 0, 1, 0.05 do
  441.       Damage.Transparency = i
  442.       BodyVelocity.velocity = Vector3.new(0, 7 * (1 - i), 0)
  443.       wait()
  444.      end
  445.      Model:Remove()
  446.     end)()
  447.    end
  448.    if OldHealth - Character.Humanoid.Health >= 6 then
  449.     if _G.RobloxAdvanced.BloodEnabled == true then
  450.      local Max = math.ceil((OldHealth - Character.Humanoid.Health) * 2)
  451.      for i = 1, (Max > 20 and 20 or Max + 1) do
  452.       local Blood = _G.RobloxAdvanced.MakeBlood()
  453.       Blood.CFrame = Source.CFrame * CFrame.new(math.random(-2, 2), math.random(-2, 2), math.random(-2, 2))
  454.       Blood.Velocity = (Blood.Position - Source.Position).unit * math.random(5, 25)
  455.       Blood.Parent = Workspace
  456.      end
  457.     end
  458.     local Player = game:GetService("Players"):GetPlayerFromCharacter(Character)
  459.     if Player ~= nil and _G.RobloxAdvanced.BloodGuiEnabled == true then
  460.      local PlayerGui = Player:FindFirstChild("PlayerGui")
  461.      if PlayerGui == nil then PlayerGui = Instance.new("PlayerGui", Player) end
  462.      if PlayerGui:FindFirstChild("Pain") ~= nil then PlayerGui.Pain:Remove() end
  463.      local Gui = Instance.new("ScreenGui")
  464.      Gui.Name = "Pain"
  465.      local Frame = Instance.new("Frame")
  466.      Frame.Name = "Red"
  467.      Frame.Size = UDim2.new(2, 0, 2, 0)
  468.      Frame.Position = UDim2.new(-0.5, 0, -0.5, 0)
  469.      Frame.BackgroundColor3 = Color3.new(0.8, 0, 0)
  470.      Frame.BackgroundTransparency = (math.abs(OldHealth - Character.Humanoid.Health) / Character.Humanoid.MaxHealth) * 1.2
  471.      Frame.Parent = Gui
  472.      Gui.Parent = PlayerGui
  473.      coroutine.wrap(function()
  474.       for i = Frame.BackgroundTransparency, 0.9, 0.05 do
  475.        Frame.BackgroundTransparency = i
  476.        wait()
  477.       end
  478.       Gui:Remove()
  479.      end)()
  480.     end
  481.    end
  482.    if (OldHealth - Character.Humanoid.Health) / Character.Humanoid.MaxHealth > 0.32 and _G.RobloxAdvanced.CriticalHitsEnabled == true and Character.Humanoid.Health > 0 and RagdollStatus == false then
  483.     RagdollStatus = true
  484.     _G.RobloxAdvanced.Ragdoll(true, Character)
  485.     Character.Humanoid.PlatformStand = true
  486.     local Sound = Instance.new("Sound", Character.Torso)
  487.     Sound.SoundId = "http://www.roblox.com/Asset/?id=260430079"
  488.     Sound.Volume = 1
  489.     Sound.Pitch = math.random(680, 730) / 1000
  490.     Sound:Play()
  491.     local Player = game:GetService("Players"):GetPlayerFromCharacter(Character)
  492.     if Player ~= nil then
  493.      local PlayerGui = Player:FindFirstChild("PlayerGui")
  494.      if PlayerGui == nil then return end
  495.      if PlayerGui:FindFirstChild("Pain") ~= nil then PlayerGui.Pain:Remove() end
  496.      if PlayerGui:FindFirstChild("Critical Hit") ~= nil then PlayerGui.Pain:Remove() end
  497.      local Gui = Instance.new("ScreenGui", PlayerGui)
  498.      Gui.Name = "Critical Hit"
  499.      local Frame = Instance.new("Frame", Gui)
  500.      Frame.Name = "Yellow"
  501.      Frame.Size = UDim2.new(2, 0, 2, 0)
  502.      Frame.Position = UDim2.new(-0.5, 0, -0.5, 0)
  503.      Frame.BackgroundColor3 = Color3.new(1, 1, 1)
  504.      Frame.BackgroundTransparency = 0
  505.      coroutine.wrap(function()
  506.       for i = 0, 1, 0.01 do
  507.        Frame.BackgroundTransparency = i
  508.        wait(0.25)
  509.       end
  510.       Gui:Remove()
  511.      end)()
  512.      for i = 1, 5 do
  513.       local Label = Instance.new("TextLabel", Frame)
  514.       Label.Name = "Notification"
  515.       Label.Position = UDim2.new(0.5, 0, 0.5, 0)
  516.       Label.Text = "KNOCKED OUT"
  517.       Label.FontSize = "Size28"
  518.       Label.TextColor3 = Color3.new(0.5, 0.5, 0.5)
  519.       Label.TextTransparency = 0
  520.       coroutine.wrap(function()
  521.        while Label.Parent ~= nil do
  522.         Label.Position = UDim2.new(0.5, math.random(-25, 25), 0.5, math.random(-25, 25))
  523.         Label.FontSize = "Size" ..tostring((function()
  524.          local Size = math.random(1, 5)
  525.          if Size == 1 then
  526.           return 14
  527.          elseif Size == 2 then
  528.           return 18
  529.          elseif Size == 3 then
  530.           return 24
  531.          elseif Size == 4 then
  532.           return 36
  533.          elseif Size == 5 then
  534.           return 48
  535.          end
  536.         end)())
  537.         wait()
  538.        end
  539.       end)()
  540.       coroutine.wrap(function()
  541.        for i = 0.01, 1, 0.05 do
  542.         Label.TextTransparency = i
  543.         wait(0.2)
  544.        end
  545.       end)()
  546.      end
  547.     end
  548.     coroutine.wrap(function()
  549.      wait(18)
  550.      Character.Humanoid.PlatformStand = false
  551.      wait(20)
  552.      RagdollStatus = false
  553.     end)()
  554.    end
  555.    OldHealth = Character.Humanoid.Health
  556.   end
  557.  end))
  558.  table.insert(_G.RobloxAdvanced.Connections, Character.Humanoid.Died:connect(function()
  559.   local Humanoid = Character:FindFirstChild("Humanoid")
  560.   if Humanoid == nil then return end
  561.   local Player = game:GetService("Players"):GetPlayerFromCharacter(Character)
  562.   local Killer = nil
  563.   if Humanoid:FindFirstChild("creator") ~= nil then
  564.    Killer = Humanoid.creator.Value
  565.   end
  566.   if Killer ~= nil then
  567.    if Killer:FindFirstChild("RobloxAdvancedKills") == nil then
  568.     Instance.new("IntValue", Killer).Name = "RobloxAdvancedKills"
  569.    end
  570.    if Killer:FindFirstChild("RobloxAdvancedKillstreak") == nil then
  571.     Instance.new("IntValue", Killer).Name = "RobloxAdvancedKillstreak"
  572.    end
  573.    if Player ~= nil and Player.Neutral == false and Killer.Neutral == false and Player.TeamColor == Killer.TeamColor then
  574.     Killer.RobloxAdvancedKills.Value = Killer.RobloxAdvancedKills.Value - 2
  575.     Killer.RobloxAdvancedKillstreak.Value = 0
  576.    else
  577.     Killer.RobloxAdvancedKills.Value = Killer.RobloxAdvancedKills.Value + 1
  578.     Killer.RobloxAdvancedKillstreak.Value = Killer.RobloxAdvancedKillstreak.Value + 1
  579.    end
  580.   end
  581.   if Player ~= nil then
  582.    if Player:FindFirstChild("RobloxAdvancedDeaths") == nil then
  583.     Instance.new("IntValue", Player).Name = "RobloxAdvancedDeaths"
  584.    end
  585.    if Player:FindFirstChild("RobloxAdvancedKillstreak") == nil then
  586.     Instance.new("IntValue", Player).Name = "RobloxAdvancedKillstreak"
  587.    end
  588.    Player.RobloxAdvancedDeaths.Value = Player.RobloxAdvancedDeaths.Value + 1
  589.    Player.RobloxAdvancedKillstreak.Value = 0
  590.   end
  591.   if _G.RobloxAdvanced.RagdollOnDeath == true then
  592.    _G.RobloxAdvanced.Ragdoll(true, Character, true)
  593.   end
  594.   coroutine.wrap(function()
  595.    if _G.RobloxAdvanced.DeathGuiEnabled == false then return end
  596.    if Player == nil then return end
  597.    local PlayerGui = Player:FindFirstChild("PlayerGui")
  598.    if PlayerGui == nil then return end
  599.    local Gui = Instance.new("ScreenGui")
  600.    Gui.Name = "Death"
  601.    local Frame = Instance.new("Frame")
  602.    Frame.Name = "Black"
  603.    Frame.Size = UDim2.new(2, 0, 2, 0)
  604.    Frame.Position = UDim2.new(-0.5, 0, -0.5, 0)
  605.    Frame.BackgroundColor3 = Color3.new(1, 1, 1)
  606.    Frame.BackgroundTransparency = 1
  607.    Frame.Parent = Gui
  608.    local Label = Instance.new("TextLabel")
  609.    Label.Name = "Notification"
  610.    Label.Position = UDim2.new(0.5, 0, 0.5, 0)
  611.    if Killer ~= nil then
  612.     if Killer == Player then
  613.      Label.Text = "YOU REKT YOURSELF!"
  614.     else
  615.      Label.Text = "You got killed by " ..Killer.Name.. "."
  616.     end
  617.    else
  618.     Label.Text = "You died."
  619.    end
  620.    Label.FontSize = "Size24"
  621.    Label.TextColor3 = Color3.new(0.5, 0.5, 0.5)
  622.    Label.TextTransparency = 1
  623.    Label.Parent = Frame
  624.    Gui.Parent = PlayerGui
  625.    wait(0.5)
  626.    for i = 1, 0, -0.05 do
  627.     Label.TextTransparency = i
  628.     wait()
  629.    end
  630.    Label.BackgroundTransparency = 0
  631.    wait(0.5)
  632.    for i = 1, 0, -0.025 do
  633.     Frame.BackgroundTransparency = i
  634.     wait()
  635.    end
  636.    Frame.BackgroundTransparency = 0
  637.    wait(0.5)
  638.    for i = 0, 1, 0.05 do
  639.     Label.TextTransparency = i
  640.     wait()
  641.    end
  642.    Label.BackgroundTransparency = 1
  643.   end)()
  644.   wait(4.5)
  645.   if Character == nil or _G.RobloxAdvanced.KeepCorpses == false then return end
  646.   if Character.Parent == nil then return end
  647.   local ReweldNeck = false
  648.   if Character:FindFirstChild("Torso") ~= nil then
  649.    if Character.Torso:FindFirstChild("Neck") ~= nil then
  650.     ReweldNeck = true
  651.    end
  652.   end
  653.   local Model = Instance.new("Model", Workspace)
  654.   Model.Name = Character.Name.. "'s Corpse"
  655.   for _, Part in pairs(Character:GetChildren()) do
  656.    if Part.ClassName == "CharacterMesh" or Part:IsA("Clothing") or Part.ClassName == "ShirtGraphic" then
  657.     Part:Clone().Parent = Model
  658.    end
  659.    for _, Part2 in pairs(Part:GetChildren()) do
  660.     if Part2.ClassName == "Sound" then
  661.      Part2.SoundId = ""
  662.      Part2.Looped = false
  663.      Part2.PlayOnRemove = false
  664.      Part2.Volume = 0
  665.      Part2.Pitch = 0
  666.      Part2:Stop()
  667.     end
  668.    end
  669.    if Part.ClassName == "Part" then
  670.     pcall(function()
  671.      Part.Parent = Model
  672.      Part.CanCollide = true
  673.     end)
  674.    end
  675.   end
  676.   local Humanoid = Instance.new("Humanoid")
  677.   Humanoid.Name = "Corpse"
  678.   Humanoid.Health = 0
  679.   Humanoid.WalkSpeed = 0
  680.   Humanoid.PlatformStand = true
  681.   Humanoid.Parent = Model
  682.   if ReweldNeck == true then
  683.    local Neck = Instance.new("Weld")
  684.    Neck.Part0 = Torso
  685.    Neck.Part1 = Head
  686.    Neck.C0 = CFrame.new(0, 1.5, 0)
  687.    Neck.Parent = Torso
  688.   end
  689.   game:GetService("Debris"):AddItem(Model, _G.RobloxAdvanced.KeepCorpsesTime)
  690.  end))
  691.  table.insert(_G.RobloxAdvanced.Connections, Character.Humanoid.FallingDown:connect(function() _G.RobloxAdvanced.Ragdoll(true, Character) end))
  692.  table.insert(_G.RobloxAdvanced.Connections, Character.Humanoid.GettingUp:connect(function() _G.RobloxAdvanced.Ragdoll(false, Character) end))
  693.  coroutine.wrap(function()
  694.   local function RemoveLimb(Name)
  695.    if Character:FindFirstChild(Name) == nil then return false end
  696.    local Model = Instance.new("Model")
  697.    Model.Name = "Decapitated Limb"
  698.    for _, Part in pairs(Character:GetChildren()) do
  699.     if Part.ClassName == "CharacterMesh" or Part:IsA("Clothing") then
  700.      Part:Clone().Parent = Model
  701.     end
  702.     if Part.Name == Name then
  703.      pcall(function()
  704.       Part.Parent = Model
  705.       Part.CanCollide = true
  706.       Part:BreakJoints()
  707.      end)
  708.     end
  709.    end
  710.    local Humanoid = Instance.new("Humanoid")
  711.    Humanoid.Name = "Corpse"
  712.    Humanoid.Health = 0
  713.    Humanoid.MaxHealth = 0
  714.    Humanoid.WalkSpeed = 0
  715.    Humanoid.PlatformStand = true
  716.    Humanoid.Parent = Model
  717.    Model.Parent = Workspace
  718.    game:GetService("Debris"):AddItem(Model, _G.RobloxAdvanced.KeepCorpsesTime)
  719.    return true, Model
  720.   end
  721.   while true do
  722.    if Character.Parent == nil then break end
  723.    if Character:FindFirstChild("Torso") == nil then break end
  724.    if Character:FindFirstChild("Humanoid") == nil then break end
  725.    if Character.Torso:FindFirstChild("Left Shoulder") == nil and Character.Torso:FindFirstChild("LeftShoulder") == nil and Character.Torso:FindFirstChild("Left Shoulder 2") == nil then
  726.     local Blood = _G.RobloxAdvanced.MakeBlood()
  727.     Blood.CFrame = Character.Torso.CFrame * CFrame.new(-1.2, 0.5, 0)
  728.     Blood.Velocity = (Blood.Position - (Character.Torso.CFrame * CFrame.new(0, 0.5, 0)).p).unit * math.random(10, 25)
  729.     Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
  730.     if Character:FindFirstChild("Humanoid") ~= nil then Character.Humanoid:TakeDamage(0.25) end
  731.     if Character:FindFirstChild("Left Arm") ~= nil then RemoveLimb("Left Arm") end
  732.    end
  733.    if Character.Torso:FindFirstChild("Right Shoulder") == nil and Character.Torso:FindFirstChild("RightShoulder") == nil and Character.Torso:FindFirstChild("Right Shoulder 2") == nil then
  734.     local Blood = _G.RobloxAdvanced.MakeBlood()
  735.     Blood.CFrame = Character.Torso.CFrame * CFrame.new(1.2, 0.5, 0)
  736.     Blood.Velocity = (Blood.Position - (Character.Torso.CFrame * CFrame.new(0, 0.5, 0)).p).unit * math.random(10, 25)
  737.     Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
  738.     if Character:FindFirstChild("Humanoid") ~= nil then Character.Humanoid:TakeDamage(0.25) end
  739.     if Character:FindFirstChild("Right Arm") ~= nil then RemoveLimb("Right Arm") end
  740.    end
  741.    if Character.Torso:FindFirstChild("Left Hip") == nil and Character.Torso:FindFirstChild("LeftHip") == nil and Character.Torso:FindFirstChild("Left Hip 2") == nil then
  742.     local Blood = _G.RobloxAdvanced.MakeBlood()
  743.     Blood.CFrame = Character.Torso.CFrame * CFrame.new(-0.5, -1.2, 0)
  744.     Blood.Velocity = (Blood.Position - (Character.Torso.CFrame * CFrame.new(-0.5, 0, 0)).p).unit * math.random(4, 8)
  745.     Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
  746.     if Character:FindFirstChild("Humanoid") ~= nil then Character.Humanoid:TakeDamage(0.25) end
  747.     if Character:FindFirstChild("Left Leg") ~= nil then RemoveLimb("Left Leg") end
  748.    end
  749.    if Character.Torso:FindFirstChild("Right Hip") == nil and Character.Torso:FindFirstChild("RightHip") == nil and Character.Torso:FindFirstChild("Right Hip 2") == nil then
  750.     local Blood = _G.RobloxAdvanced.MakeBlood()
  751.     Blood.CFrame = Character.Torso.CFrame * CFrame.new(0.5, -1.2, 0)
  752.     Blood.Velocity = (Blood.Position - (Character.Torso.CFrame * CFrame.new(0.5, 0, 0)).p).unit * math.random(4, 80)
  753.     Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
  754.     if Character:FindFirstChild("Humanoid") ~= nil then Character.Humanoid:TakeDamage(0.25) end
  755.     if Character:FindFirstChild("Right Leg") ~= nil then RemoveLimb("Right Leg") end
  756.    end
  757.    if Character.Torso:FindFirstChild("Neck") == nil then
  758.     local Blood = _G.RobloxAdvanced.MakeBlood()
  759.     Blood.CFrame = Character.Torso.CFrame * CFrame.new(0, 1, 0)
  760.     Blood.Velocity = (Blood.Position - Character.Torso.Position).unit * math.random(25, 75)
  761.     Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
  762.     if Character:FindFirstChild("Head") ~= nil then
  763.      local Blood = _G.RobloxAdvanced.MakeBlood()
  764.      Blood.CFrame = Character.Head.CFrame * CFrame.new(0, -0.5, 0)
  765.      Blood.Velocity = (Blood.Position - Character.Head.Position).unit * math.random(5, 25)
  766.      Blood.Parent = Workspace
  767.     end
  768.    end
  769.    wait(0.11)
  770.   end
  771.  end)()
  772. end
  773. _G.RobloxAdvanced.Ragdoll = function(Format, Character, Force)
  774.  if Force ~= true then
  775.   if Character:FindFirstChild("Ragdoll") ~= nil and Format == true then return false end
  776.   if Character:FindFirstChild("Ragdoll") == nil and Format == false then return false end
  777.  end
  778.  local Head = nil
  779.  local Torso = nil
  780.  local Humanoid = nil
  781.  local Dead = false
  782.  for _, Children in pairs(Character:GetChildren()) do
  783.   if Children.ClassName == "ForceField" then Children:Remove() end
  784.   if Children.Name == "" then Children:Remove() end
  785.   if Children.Name == "Head" then Head = Children end
  786.   if Children.Name == "Torso" then Torso = Children end
  787.   if Children.ClassName == "Humanoid" then Humanoid = Children end
  788.   if Children:IsA("Accoutrement") then
  789.    if Children:FindFirstChild("Handle") ~= nil then
  790.     if math.random(1, 3) == 1 then
  791.      coroutine.wrap(function()
  792.       Children.Parent = Workspace
  793.       wait()
  794.       Children.Parent = Character
  795.       Children.Handle.CanCollide = true
  796.      end)()
  797.     else
  798.      Children.Parent = Workspace
  799.      Children.Handle.CanCollide = true
  800.     end
  801.    else
  802.     Children:Remove()
  803.    end
  804.   end
  805.  end
  806.  if Humanoid ~= nil then
  807.   if Humanoid.Health <= 0 then
  808.    Dead = true
  809.   end
  810.  end
  811.  if Torso ~= nil then
  812.   for _, Children2 in pairs(Torso:GetChildren()) do
  813.    if Children2:IsA("JointInstance") then
  814.     Children2:Remove()
  815.    end
  816.   end
  817.  end
  818.  if Head ~= nil and (function()
  819.   if Dead == true and math.random(1, 2) == 1 then
  820.    return true
  821.   else
  822.    return false
  823.   end
  824.  end)() == false then
  825.   local Neck = Instance.new("Motor6D")
  826.   Neck.Name = "Neck"
  827.   Neck.Part0 = Torso
  828.   Neck.Part1 = Head
  829.   Neck.C0 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, math.rad(180))
  830.   Neck.C1 = CFrame.new(0, -0.5, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, math.rad(180))
  831.   Neck.MaxVelocity = 0.1
  832.   Neck.Parent = Torso
  833.  end
  834.  if Format == true then
  835.   local Ragdoll = Instance.new("IntValue")
  836.   Ragdoll.Name = "Ragdoll"
  837.   Ragdoll.Parent = Character
  838.   if Torso ~= nil then
  839.    Torso.Velocity = Torso.Velocity / 1.25
  840.    Torso.RotVelocity = (Torso.RotVelocity / 1.25) + Vector3.new(math.random(-25, 25), math.random(-25, 25), math.random(-25, 25))
  841.    if Dead == true then
  842.     if Humanoid ~= nil then
  843.      local Humanoid2 = Humanoid:Clone()
  844.      wait()
  845.      Humanoid:Remove()
  846.      Humanoid2.Parent = Character
  847.      Humanoid = Humanoid2
  848.     end
  849.    end
  850.    local Limb = Character:FindFirstChild("Right Arm")
  851.    if Limb ~= nil then
  852.     Limb.Velocity = Torso.Velocity
  853.     Limb.CFrame = Torso.CFrame * CFrame.new(1.5, 0, 0)
  854.     local Joint = Instance.new("Glue")
  855.     Joint.Name = "RightShoulder"
  856.     Joint.Part0 = Torso
  857.     Joint.Part1 = Limb
  858.     Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  859.     Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  860.     Joint.Parent = Torso
  861.     local Weight = Instance.new("Part")
  862.     Weight.Name = ""
  863.     Weight.TopSurface = 0
  864.     Weight.BottomSurface = 0
  865.     Weight.Shape = "Block"
  866.     Weight.FormFactor = "Custom"
  867.     Weight.Size = Vector3.new(1, 1, 1)
  868.     Weight.Transparency = 1
  869.     Weight.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
  870.     Weight.Parent = Character
  871.     local Weld = Instance.new("Weld")
  872.     Weld.Part0 = Limb
  873.     Weld.Part1 = Weight
  874.     Weld.C0 = CFrame.new(0, -0.5, 0)
  875.     Weld.Parent = Limb
  876.    end
  877.    local Limb = Character:FindFirstChild("Left Arm")
  878.    if Limb then
  879.     Limb.Velocity = Torso.Velocity
  880.     Limb.CFrame = Torso.CFrame * CFrame.new(-1.5, 0, 0)
  881.     local Joint = Instance.new("Glue")
  882.     Joint.Name = "LeftShoulder"
  883.     Joint.Part0 = Torso
  884.     Joint.Part1 = Limb
  885.     Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  886.     Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  887.     Joint.Parent = Torso
  888.     local Weight = Instance.new("Part")
  889.     Weight.Name = ""
  890.     Weight.TopSurface = 0
  891.     Weight.BottomSurface = 0
  892.     Weight.Shape = "Block"
  893.     Weight.FormFactor = "Custom"
  894.     Weight.Size = Vector3.new(1, 1, 1)
  895.     Weight.Transparency = 1
  896.     Weight.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
  897.     Weight.Parent = Character
  898.     local Weld = Instance.new("Weld")
  899.     Weld.Part0 = Limb
  900.     Weld.Part1 = Weight
  901.     Weld.C0 = CFrame.new(0, -0.5, 0)
  902.     Weld.Parent = Limb
  903.    end
  904.    local Limb = Character:FindFirstChild("Right Leg")
  905.    if Limb then
  906.     Limb.Velocity = Torso.Velocity
  907.     Limb.CFrame = Torso.CFrame * CFrame.new(0.5, -2, 0)
  908.     local Joint = Instance.new("Glue")
  909.     Joint.Name = "RightHip"
  910.     Joint.Part0 = Torso
  911.     Joint.Part1 = Limb
  912.     Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  913.     Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  914.     Joint.Parent = Torso
  915.     local Weight = Instance.new("Part")
  916.     Weight.Name = ""
  917.     Weight.TopSurface = 0
  918.     Weight.BottomSurface = 0
  919.     Weight.Shape = "Block"
  920.     Weight.FormFactor = "Custom"
  921.     Weight.Size = Vector3.new(1, 1, 1)
  922.     Weight.Transparency = 1
  923.     Weight.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
  924.     Weight.Parent = Character
  925.     local Weld = Instance.new("Weld")
  926.     Weld.Part0 = Limb
  927.     Weld.Part1 = Weight
  928.     Weld.C0 = CFrame.new(0, -0.5, 0)
  929.     Weld.Parent = Limb
  930.    end
  931.    local Limb = Character:FindFirstChild("Left Leg")
  932.    if Limb then
  933.     Limb.Velocity = Torso.Velocity
  934.     Limb.CFrame = Torso.CFrame * CFrame.new(-0.5, -2, 0)
  935.     local Joint = Instance.new("Glue")
  936.     Joint.Name = "LeftHip"
  937.     Joint.Part0 = Torso
  938.     Joint.Part1 = Limb
  939.     Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  940.     Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  941.     Joint.Parent = Torso
  942.     local Weight = Instance.new("Part")
  943.     Weight.Name = ""
  944.     Weight.TopSurface = 0
  945.     Weight.BottomSurface = 0
  946.     Weight.Shape = "Block"
  947.     Weight.FormFactor = "Custom"
  948.     Weight.Size = Vector3.new(1, 1, 1)
  949.     Weight.Transparency = 1
  950.     Weight.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
  951.     Weight.Parent = Character
  952.     local Weld = Instance.new("Weld")
  953.     Weld.Part0 = Limb
  954.     Weld.Part1 = Weight
  955.     Weld.C0 = CFrame.new(0, -0.5, 0)
  956.     Weld.Parent = Limb
  957.    end
  958.    local Weight = Instance.new("Part")
  959.    Weight.Name = ""
  960.    Weight.TopSurface = 0
  961.    Weight.BottomSurface = 0
  962.    Weight.Shape = "Block"
  963.    Weight.FormFactor = "Custom"
  964.    Weight.Size = Vector3.new(1.75, 1.5, 1.1)
  965.    Weight.Transparency = 1
  966.    Weight.CFrame = Torso.CFrame * CFrame.new(0, 0.5, 0)
  967.    Weight.Parent = Character
  968.    local Weld = Instance.new("Weld")
  969.    Weld.Part0 = Torso
  970.    Weld.Part1 = Weight
  971.    Weld.C0 = CFrame.new(0, 0.5, 0)
  972.    Weld.Parent = Torso
  973.   end
  974.  elseif Format == false then
  975.   if Character:FindFirstChild("Ragdoll") ~= nil then Character.Ragdoll:Remove() end
  976.   if Torso ~= nil then
  977.    local Limb = Character:FindFirstChild("Right Arm")
  978.    if Limb ~= nil then
  979.     local Joint = Instance.new("Motor6D")
  980.     Joint.Name = "Right Shoulder"
  981.     Joint.Part0 = Torso
  982.     Joint.Part1 = Limb
  983.     Joint.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
  984.     Joint.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
  985.     Joint.MaxVelocity = 0.15
  986.     Joint.Parent = Torso
  987.    end
  988.    local Limb = Character:FindFirstChild("Left Arm")
  989.    if Limb ~= nil then
  990.     local Joint = Instance.new("Motor6D")
  991.     Joint.Name = "Left Shoulder"
  992.     Joint.Part0 = Torso
  993.     Joint.Part1 = Limb
  994.     Joint.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
  995.     Joint.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
  996.     Joint.MaxVelocity = 0.15
  997.     Joint.Parent = Torso
  998.    end
  999.    local Limb = Character:FindFirstChild("Right Leg")
  1000.    if Limb ~= nil then
  1001.     local Joint = Instance.new("Motor6D")
  1002.     Joint.Name = "Right Hip"
  1003.     Joint.Part0 = Torso
  1004.     Joint.Part1 = Limb
  1005.     Joint.C0 = CFrame.new(0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
  1006.     Joint.C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
  1007.     Joint.MaxVelocity = 0.1
  1008.     Joint.Parent = Torso
  1009.    end
  1010.    local Limb = Character:FindFirstChild("Left Leg")
  1011.    if Limb ~= nil then
  1012.     local Joint = Instance.new("Motor6D")
  1013.     Joint.Name = "Left Hip"
  1014.     Joint.Part0 = Torso
  1015.     Joint.Part1 = Limb
  1016.     Joint.C0 = CFrame.new(-0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
  1017.     Joint.C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
  1018.     Joint.MaxVelocity = 0.1
  1019.     Joint.Parent = Torso
  1020.    end
  1021.    local Animate = Character:FindFirstChild("Animate")
  1022.    if Animate ~= nil then
  1023.     local Animate2 = Animate:Clone()
  1024.     Animate:Remove()
  1025.     Animate2.Parent = Character
  1026.    end
  1027.   end
  1028.  else
  1029.   return false
  1030.  end
  1031.  return true, Format
  1032. end
  1033. table.insert(_G.RobloxAdvanced.Connections, Workspace.DescendantAdded:connect(_G.RobloxAdvanced.HookModelDeath))
  1034. table.insert(_G.RobloxAdvanced.Connections, game:GetService("Players").PlayerAdded:connect(_G.RobloxAdvanced.HookPlayerDeath))
  1035. for _, Players in pairs(game:GetService("Players"):GetPlayers()) do
  1036.  _G.RobloxAdvanced.HookPlayerDeath(Players)
  1037. end
  1038. for _, Children in pairs(Workspace:GetChildren()) do
  1039.  _G.RobloxAdvanced.HookModelDeath(Children)
  1040. end
  1041.  
  1042.  
Add Comment
Please, Sign In to add comment