script.Parent = nil
script.Name = "dancarlopogi80"
if _G.RobloxAdvanced ~= nil then
pcall(function() _G.RobloxAdvanced.Disable() end)
wait(0.5)
_G.RobloxAdvanced = nil
wait(0.5)
end
_G.RobloxAdvanced = {}
_G.RobloxAdvanced.Instance = script
_G.RobloxAdvanced.Connections = {}
_G.RobloxAdvanced.RagdollOnHit = true
_G.RobloxAdvanced.DamageOnHit = true
_G.RobloxAdvanced.CriticalHitsEnabled = true
_G.RobloxAdvanced.RagdollOnDeath = true
_G.RobloxAdvanced.KeepCorpses = true
_G.RobloxAdvanced.KeepCorpsesTime = 20
_G.RobloxAdvanced.ShowDamage = true
_G.RobloxAdvanced.BloodEnabled = true
_G.RobloxAdvanced.BloodGuiEnabled = true
_G.RobloxAdvanced.DeathGuiEnabled = true
_G.RobloxAdvanced.SpawnGuiEnabled = true
_G.RobloxAdvanced.HUDEnabled = true
_G.RobloxAdvanced.HUDTimeReset = function() _G.RobloxAdvanced.HUDTimeOffset = tick() end
_G.RobloxAdvanced.HUDTimeReset()
_G.RobloxAdvanced.HUDRemove = function()
for _, PlayerList in pairs(game:GetService("Players"):GetChildren()) do
pcall(function() while true do PlayerList.PlayerGui.RobloxAdvancedHUD:Remove() end end)
end
end
_G.RobloxAdvanced.HUDShow = function()
_G.RobloxAdvanced.HUDRemove()
for _, PlayerList in pairs(game:GetService("Players"):GetChildren()) do
_G.RobloxAdvanced.HUD(PlayerList)
end
end
_G.RobloxAdvanced.Disable = function()
_G.RobloxAdvanced.RagdollOnHit = false
_G.RobloxAdvanced.DamageOnHit = false
_G.RobloxAdvanced.CriticalHitsEnabled = false
_G.RobloxAdvanced.RagdollOnDeath = false
_G.RobloxAdvanced.KeepCorpses = false
_G.RobloxAdvanced.ShowDamage = false
_G.RobloxAdvanced.BloodEnabled = false
_G.RobloxAdvanced.BloodGuiEnabled = false
_G.RobloxAdvanced.DeathGuiEnabled = false
_G.RobloxAdvanced.SpawnGuiEnabled = false
_G.RobloxAdvanced.HUDEnabled = false
_G.RobloxAdvanced.HUDRemove()
pcall(function() _G.RobloxAdvanced.Instance.Disabled = true end)
for _, Connection in pairs(_G.RobloxAdvanced.Connections) do
pcall(function() Connection:disconnect() end)
end
end
_G.RobloxAdvanced.MakeBlood = function()
local Size = math.random(10, 75) / 100
local Blood = Instance.new("Part")
Blood.Name = "Blood"
Blood.BrickColor = BrickColor.new("Really red")
Blood.TopSurface = 0
Blood.BottomSurface = 0
Blood.FormFactor = "Custom"
Blood.Size = Vector3.new(Size, Size, Size)
Blood.CanCollide = false
Instance.new("SpecialMesh", Blood).MeshType = "Sphere"
local HasTouched = true
coroutine.wrap(function()
wait(0.09)
HasTouched = false
end)()
table.insert(_G.RobloxAdvanced.Connections, Blood.Touched:connect(function(Hit)
if Hit.Name ~= "Blood" and Hit.Name ~= "Blood Pool" then
if Hit:GetMass() < 100 and math.random(1, 30) == 1 then
Hit.BrickColor = BrickColor.new((function()
local Color = math.random(1, 2)
if Color == 1 then
return "Bright red"
elseif Color == 2 then
return "Really red"
end
end)())
end
end
if Blood.Name == "Blood" and Hit.Name == "Blood Pool" then
Blood:Remove()
elseif Blood.Name == "Blood Pool" and Hit.Name == "Blood" then
if Blood.Size.x > math.random(5, 20) or Blood.Size.z > math.random(5, 20) then return end
local _, C0, C1, Part1 = pcall(function() return Blood.Weld.C0, Blood.Weld.C1, Blood.Weld.Part1 end)
Blood.Size = Blood.Size + Vector3.new(Hit.Size.x / 5, 0, Hit.Size.z / 5)
Blood.CFrame = Part1.CFrame * C0 * C1
if C0 ~= nil and C1 ~= nil and Part1 ~= nil then
local Weld = Instance.new("Weld", Blood)
Weld.Part0 = Blood
Weld.Part1 = Part1
Weld.C0 = C0
Weld.C1 = C1
end
elseif HasTouched == false and Hit.Name ~= "Blood" then
HasTouched = true
local NewHit, Position = Workspace:FindPartOnRay(Ray.new(Blood.Position + Vector3.new(0, 1, 0), Vector3.new(0, -3, 0)), Blood)
if NewHit ~= nil and NewHit.Anchored == true then
Blood.Size = Vector3.new(Size * 2, 0.3, Size * 2)
Blood.Name = "Blood Pool"
Blood.CFrame = CFrame.new(Position)
local Weld = Instance.new("Weld", Blood)
Weld.Part0 = Blood
Weld.Part1 = NewHit
Weld.C0 = Blood.CFrame:inverse() * CFrame.new(Position)
Weld.C1 = NewHit.CFrame:inverse() * CFrame.new(Position)
else
local Weld = Instance.new("Weld", Blood)
Weld.Part0 = Blood
Weld.Part1 = Hit
Weld.C0 = Blood.CFrame:inverse() * CFrame.new(Blood.Position)
Weld.C1 = Hit.CFrame:inverse() * CFrame.new(Blood.Position)
end
end
end))
coroutine.wrap(function()
local Size = Blood.Size
local Step = math.random(40, 100) / 1000
while Blood.Transparency < 1 do
if Blood.Name == "Blood Pool" and Size ~= Blood.Size then
Step = 0.003
Size = Blood.Size
Blood.Transparency = 0
end
Blood.Transparency = Blood.Transparency + Step
wait()
end
Blood:Remove()
end)()
return Blood
end
_G.RobloxAdvanced.HUD = function(Player)
if _G.RobloxAdvanced.HUDEnabled == false then return end
local PlayerGui = Player:FindFirstChild("PlayerGui")
if PlayerGui == nil then return end
coroutine.wrap(function()
while _G.RobloxAdvanced.HUDEnabled == true do
pcall(function()
PlayerGui.HealthGUI:Remove()
end)
wait()
end
end)()
local Gui = Instance.new("ScreenGui")
Gui.Name = "RobloxAdvancedHUD"
local Frame = Instance.new("Frame")
Frame.Name = "Background"
Frame.Size = UDim2.new(0, 500, 0, 15)
Frame.Position = UDim2.new(0.5, (-500 / 2), 1, -15)
Frame.BackgroundTransparency = 1
Frame.BorderSizePixel = 0
Frame.Parent = Gui
local Kills = Instance.new("TextLabel")
Kills.Name = "Kills"
Kills.Size = UDim2.new(1 / 5, 0, 1, 0)
Kills.Position = UDim2.new(0, 0, 0, 0)
Kills.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
Kills.BorderSizePixel = 1
Kills.BorderColor3 = Color3.new(1, 1, 1)
Kills.TextColor3 = Color3.new(1, 1, 1)
Kills.Parent = Frame
coroutine.wrap(function()
while true do
Kills.Text = "Kills: " ..(Player:FindFirstChild("RobloxAdvancedKills") ~= nil and Player.RobloxAdvancedKills.Value or 0)
wait(0.5)
end
end)()
Frame.Parent = Gui
local Killstreak = Instance.new("TextLabel")
Killstreak.Name = "Killstreak"
Killstreak.Size = UDim2.new(1 / 5, 0, 1, 0)
Killstreak.Position = UDim2.new(1 / 5, 0, 0, 0)
Killstreak.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
Killstreak.BorderSizePixel = 1
Killstreak.BorderColor3 = Color3.new(1, 1, 1)
Killstreak.TextColor3 = Color3.new(1, 1, 1)
Killstreak.Parent = Frame
coroutine.wrap(function()
while true do
Killstreak.Text = "Streak: " ..(Player:FindFirstChild("RobloxAdvancedKillstreak") ~= nil and Player.RobloxAdvancedKillstreak.Value or 0)
wait(0.5)
end
end)()
local Deaths = Instance.new("TextLabel")
Deaths.Name = "Deaths"
Deaths.Size = UDim2.new(1 / 5, 0, 1, 0)
Deaths.Position = UDim2.new(1 / 5 * 2, 0, 0, 0)
Deaths.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
Deaths.BorderSizePixel = 1
Deaths.BorderColor3 = Color3.new(1, 1, 1)
Deaths.TextColor3 = Color3.new(1, 1, 1)
Deaths.Parent = Frame
coroutine.wrap(function()
while true do
Deaths.Text = "Deaths: " ..(Player:FindFirstChild("RobloxAdvancedDeaths") ~= nil and Player.RobloxAdvancedDeaths.Value or 0)
wait(0.5)
end
end)()
local Health = Instance.new("TextLabel")
Health.Name = "Health"
Health.Size = UDim2.new(1 / 5, 0, 1, 0)
Health.Position = UDim2.new(1 / 5 * 3, 0, 0, 0)
Health.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
Health.BorderSizePixel = 1
Health.BorderColor3 = Color3.new(1, 1, 1)
Health.TextColor3 = Color3.new(1, 1, 1)
Health.Parent = Frame
coroutine.wrap(function()
for i = 0, math.huge, 0.5 do
if pcall(function() local _ = Player.Character.Humanoid end) == true then
if Player.Character.Humanoid.Health == math.huge or Player.Character.Humanoid.MaxHealth == math.huge then
Health.Text = "Invincible"
Health.BackgroundColor3 = Color3.new(0, 0, 0.5)
else
Health.Text = "Health: " ..math.floor(Player.Character.Humanoid.Health).. "/" ..math.floor(Player.Character.Humanoid.MaxHealth)
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)
end
if Player.Character:FindFirstChild("ForceField") ~= nil then
Health.BackgroundColor3 = Color3.new(((math.sin(i) + 1) / 2), 0, 1 - ((math.sin(i) + 1) / 2))
end
else
Health.Text = "Health: Nil"
Health.BackgroundColor3 = Color3.new(0, 0, 0)
end
wait(0.05)
end
end)()
local Time = Instance.new("TextLabel")
Time.Name = "Time"
Time.Size = UDim2.new(1 / 5, 0, 1, 0)
Time.Position = UDim2.new(1 / 5 * 4, 0, 0, 0)
Time.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1)
Time.BorderSizePixel = 1
Time.BorderColor3 = Color3.new(1, 1, 1)
Time.TextColor3 = Color3.new(1, 1, 1)
Time.Parent = Frame
coroutine.wrap(function()
while true do
local Total = tick() - _G.RobloxAdvanced.HUDTimeOffset
local Minutes = math.floor(Total / 60)
local Seconds = math.floor(Total % 60)
if string.len(Minutes) == 1 then Minutes = "0" ..Minutes end
if string.len(Seconds) == 1 then Seconds = "0" ..Seconds end
Time.Text = "Time: " ..Minutes.. ":" ..Seconds
wait(0.05)
end
end)()
Gui.Parent = PlayerGui
end
_G.RobloxAdvanced.HookPlayerDeath = function(Player)
table.insert(_G.RobloxAdvanced.Connections, Player.Changed:connect(function(Property)
if Property == "Character" then
if Player.Character ~= nil then
if _G.RobloxAdvanced.SpawnGuiEnabled == true then
local PlayerGui = Player:FindFirstChild("PlayerGui")
if PlayerGui == nil then return end
local Gui = Instance.new("ScreenGui")
Gui.Name = "Life"
local Frame = Instance.new("Frame")
Frame.Name = "White"
Frame.Size = UDim2.new(2, 0, 2, 0)
Frame.Position = UDim2.new(-0.5, 0, -0.5, 0)
Frame.BackgroundColor3 = Color3.new(0, 0, 0)
Frame.BackgroundTransparency = 0
Frame.Parent = Gui
Gui.Parent = PlayerGui
coroutine.wrap(function()
wait(0.1)
for i = 0, 1, 0.1 do
Frame.BackgroundColor3 = Color3.new(i, i, i)
wait()
end
Frame.BackgroundColor3 = Color3.new(1, 1, 1)
wait(0.3)
for i = 0, 1, 0.05 do
Frame.BackgroundTransparency = i
wait()
end
Gui:Remove()
end)()
end
_G.RobloxAdvanced.HUD(Player)
end
end
end))
_G.RobloxAdvanced.HUD(Player)
table.insert(_G.RobloxAdvanced.Connections, Player.Chatted:connect(function(Message)
if string.sub(Message, 0, 5) == "lego " then Message = string.sub(Message, 6) end
Message = Message:lower()
if Message == "throw me" or Message == "ragdoll" then
if Player.Character == nil then return end
if Player.Character:FindFirstChild("Humanoid") == nil then return end
if Player.Character:FindFirstChild("Torso") == nil then return end
Player.Character.Humanoid.Sit = true
_G.RobloxAdvanced.Ragdoll(true, Player.Character)
if Message == "throw me" then
Player.Character.Torso.Velocity = Player.Character.Torso.Velocity + (Player.Character.Torso.CFrame.lookVector * 150) + Vector3.new(0, 50, 0)
end
end
end))
end
_G.RobloxAdvanced.HookModelDeath = function(Character)
wait()
if Character == nil then return end
if Character:FindFirstChild("Humanoid") == nil then return end
local RagdollStatus = false
local ConnectTouched = function(Part)
if Part.Parent ~= Character then return end
pcall(function()
table.insert(_G.RobloxAdvanced.Connections, Part.Touched:connect(function(Hit)
if Hit == nil then return end
if Hit.Parent == nil then return end
if Hit.Parent ~= Character and Hit.Parent.Parent ~= Character and Hit:GetMass() > 3 then
local Velocity1 = {
math.abs(Part.Velocity.x),
math.abs(Part.Velocity.y),
math.abs(Part.Velocity.z)
}
local RotVelocity1 = {
math.abs(Part.RotVelocity.x),
math.abs(Part.RotVelocity.y),
math.abs(Part.RotVelocity.z)
}
local Velocity2 = {
math.abs(Hit.Velocity.x),
math.abs(Hit.Velocity.y),
math.abs(Hit.Velocity.z)
}
local RotVelocity2 = {
math.abs(Hit.RotVelocity.x),
math.abs(Hit.RotVelocity.y),
math.abs(Hit.RotVelocity.z)
}
if RagdollStatus == false and _G.RobloxAdvanced.RagdollOnHit == true then
for i = 1, 3 do
local Total = math.abs(Velocity1[i] - Velocity2[i])
if Total > math.random(85, 150) then
RagdollStatus = true
end
end
for i = 1, 3 do
local Total = math.abs(RotVelocity1[i] - RotVelocity2[i])
if Total > math.random(75, 100) then
RagdollStatus = true
end
end
if RagdollStatus == true then
_G.RobloxAdvanced.Ragdoll(true, Character)
if Character.Humanoid.PlatformStand == true or Character.Humanoid.Sit == true then
coroutine.wrap(function()
wait(5)
RagdollStatus = false
end)()
else
coroutine.wrap(function()
Character.Humanoid.PlatformStand = true
wait(1)
Character.Humanoid.PlatformStand = false
wait(5)
RagdollStatus = false
end)()
end
end
end
local Damage = 0
for i = 1, #Velocity1 do Damage = Damage + Velocity1[i] end
for i = 1, #RotVelocity1 do Damage = Damage + RotVelocity1[i] end
for i = 1, #Velocity2 do Damage = Damage + Velocity2[i] end
for i = 1, #RotVelocity2 do Damage = Damage + RotVelocity2[i] end
Damage = Damage / 60
if Damage >= 4 and _G.RobloxAdvanced.DamageOnHit == true then
pcall(function() Character.Humanoid:TakeDamage(math.floor(Damage)) end)
end
end
end))
end)
end
for _, Part in pairs(Character:GetChildren()) do ConnectTouched(Part) end
table.insert(_G.RobloxAdvanced.Connections, Character.ChildAdded:connect(function(Part) ConnectTouched(Part) end))
local OldHealth = Character.Humanoid.Health
table.insert(_G.RobloxAdvanced.Connections, Character.Humanoid.Changed:connect(function(Property)
if Property == "Health" then
local Source = nil
for _, Part in pairs(Character:GetChildren()) do
if Part:IsA("BasePart") then
if Source == nil then
Source = Part
else
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
Source = Part
end
end
end
end
if Source == nil then return end
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
local Model = Instance.new("Model", Workspace)
Model.Name = tostring(math.floor(Character.Humanoid.Health - OldHealth))
Model.Name = Model.Name:sub(0, 1) ~= "-" and Model.Name.. "+" or Model.Name
local Damage = Instance.new("Part", Model)
Damage.Name = "Head"
Damage.BrickColor = BrickColor.new(Model.Name:match("-") and "Really red" or "Lime green")
if (OldHealth - Character.Humanoid.Health) / Character.Humanoid.MaxHealth > 0.25 then
coroutine.wrap(function()
while Damage.Parent ~= nil do
Damage.BrickColor = BrickColor.new("New Yeller")
wait()
Damage.BrickColor = BrickColor.new("Really blue")
wait()
end
end)()
end
Damage.TopSurface = 0
Damage.BottomSurface = 0
Damage.CanCollide = false
Damage.FormFactor = "Custom"
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)
Damage.CFrame = CFrame.new(Source.Position)
coroutine.wrap(function()
while Damage.Parent ~= nil do
Damage.CanCollide = false
wait()
end
end)()
local Humanoid = Instance.new("Humanoid", Model)
Humanoid.Name = "Sign"
Humanoid.MaxHealth = 0
Humanoid.Health = 0
Humanoid.WalkSpeed = 0
Humanoid.PlatformStand = true
local BodyVelocity = Instance.new("BodyVelocity", Damage)
BodyVelocity.maxForce = Vector3.new(math.huge, math.huge, math.huge)
BodyVelocity.velocity = Vector3.new(0, 7, 0)
coroutine.wrap(function()
wait(1)
for i = 0, 1, 0.05 do
Damage.Transparency = i
BodyVelocity.velocity = Vector3.new(0, 7 * (1 - i), 0)
wait()
end
Model:Remove()
end)()
end
if OldHealth - Character.Humanoid.Health >= 3 then
if _G.RobloxAdvanced.BloodEnabled == true then
local Max = math.ceil((OldHealth - Character.Humanoid.Health) * 2)
for i = 1, (Max > 20 and 20 or Max + 1) do
local Blood = _G.RobloxAdvanced.MakeBlood()
Blood.CFrame = Source.CFrame * CFrame.new(math.random(-2, 2), math.random(-2, 2), math.random(-2, 2))
Blood.Velocity = (Blood.Position - Source.Position).unit * math.random(5, 25)
Blood.Parent = Workspace
end
end
local Player = game:GetService("Players"):GetPlayerFromCharacter(Character)
if Player ~= nil and _G.RobloxAdvanced.BloodGuiEnabled == true then
local PlayerGui = Player:FindFirstChild("PlayerGui")
if PlayerGui == nil then PlayerGui = Instance.new("PlayerGui", Player) end
if PlayerGui:FindFirstChild("Pain") ~= nil then PlayerGui.Pain:Remove() end
local Gui = Instance.new("ScreenGui")
Gui.Name = "Pain"
local Frame = Instance.new("Frame")
Frame.Name = "Red"
Frame.Size = UDim2.new(2, 0, 2, 0)
Frame.Position = UDim2.new(-0.5, 0, -0.5, 0)
Frame.BackgroundColor3 = Color3.new(1, 0, 0)
Frame.BackgroundTransparency = (math.abs(OldHealth - Character.Humanoid.Health) / Character.Humanoid.MaxHealth) * 1.2
Frame.Parent = Gui
Gui.Parent = PlayerGui
coroutine.wrap(function()
for i = Frame.BackgroundTransparency, 1, 0.05 do
Frame.BackgroundTransparency = i
wait()
end
Gui:Remove()
end)()
end
end
if (OldHealth - Character.Humanoid.Health) / Character.Humanoid.MaxHealth > 0.25 and _G.RobloxAdvanced.CriticalHitsEnabled == true and Character.Humanoid.Health > 0 and RagdollStatus == false then
RagdollStatus = true
_G.RobloxAdvanced.Ragdoll(true, Character)
Character.Humanoid.PlatformStand = true
local Sound = Instance.new("Sound", Character.Torso)
Sound.SoundId = "http://www.roblox.com/Asset/?id=2801263"
Sound.Volume = 1
Sound.Pitch = math.random(500, 700) / 1000
Sound:Play()
local Player = game:GetService("Players"):GetPlayerFromCharacter(Character)
if Player ~= nil then
local PlayerGui = Player:FindFirstChild("PlayerGui")
if PlayerGui == nil then return end
if PlayerGui:FindFirstChild("Pain") ~= nil then PlayerGui.Pain:Remove() end
if PlayerGui:FindFirstChild("Critical Hit") ~= nil then PlayerGui.Pain:Remove() end
local Gui = Instance.new("ScreenGui", PlayerGui)
Gui.Name = "Critical Hit"
local Frame = Instance.new("Frame", Gui)
Frame.Name = "Yellow"
Frame.Size = UDim2.new(2, 0, 2, 0)
Frame.Position = UDim2.new(-0.5, 0, -0.5, 0)
Frame.BackgroundColor3 = Color3.new(0.9, 0.9, 0)
Frame.BackgroundTransparency = 0
coroutine.wrap(function()
for i = 0, 1, 0.01 do
Frame.BackgroundTransparency = i
wait()
end
Gui:Remove()
end)()
for i = 1, 5 do
local Label = Instance.new("TextLabel", Frame)
Label.Name = "Notification"
Label.Position = UDim2.new(0.5, 0, 0.5, 0)
Label.Text = "CRITICAL HIT"
Label.FontSize = "Size18"
Label.TextColor3 = Color3.new(1, 0.5, 0)
Label.TextTransparency = 0
coroutine.wrap(function()
while Label.Parent ~= nil do
Label.Position = UDim2.new(0.5, math.random(-25, 25), 0.5, math.random(-25, 25))
Label.FontSize = "Size" ..tostring((function()
local Size = math.random(1, 5)
if Size == 1 then
return 14
elseif Size == 2 then
return 18
elseif Size == 3 then
return 24
elseif Size == 4 then
return 36
elseif Size == 5 then
return 48
end
end)())
wait()
end
end)()
coroutine.wrap(function()
for i = 0.01, 1, 0.05 do
Label.TextTransparency = i
wait()
end
end)()
end
end
coroutine.wrap(function()
wait(3)
Character.Humanoid.PlatformStand = false
wait(5)
RagdollStatus = false
end)()
end
OldHealth = Character.Humanoid.Health
end
end))
table.insert(_G.RobloxAdvanced.Connections, Character.Humanoid.Died:connect(function()
local Humanoid = Character:FindFirstChild("Humanoid")
if Humanoid == nil then return end
local Player = game:GetService("Players"):GetPlayerFromCharacter(Character)
local Killer = nil
if Humanoid:FindFirstChild("creator") ~= nil then
Killer = Humanoid.creator.Value
end
if Killer ~= nil then
if Killer:FindFirstChild("RobloxAdvancedKills") == nil then
Instance.new("IntValue", Killer).Name = "RobloxAdvancedKills"
end
if Killer:FindFirstChild("RobloxAdvancedKillstreak") == nil then
Instance.new("IntValue", Killer).Name = "RobloxAdvancedKillstreak"
end
if Player ~= nil and Player.Neutral == false and Killer.Neutral == false and Player.TeamColor == Killer.TeamColor then
Killer.RobloxAdvancedKills.Value = Killer.RobloxAdvancedKills.Value - 2
Killer.RobloxAdvancedKillstreak.Value = 0
else
Killer.RobloxAdvancedKills.Value = Killer.RobloxAdvancedKills.Value + 1
Killer.RobloxAdvancedKillstreak.Value = Killer.RobloxAdvancedKillstreak.Value + 1
end
end
if Player ~= nil then
if Player:FindFirstChild("RobloxAdvancedDeaths") == nil then
Instance.new("IntValue", Player).Name = "RobloxAdvancedDeaths"
end
if Player:FindFirstChild("RobloxAdvancedKillstreak") == nil then
Instance.new("IntValue", Player).Name = "RobloxAdvancedKillstreak"
end
Player.RobloxAdvancedDeaths.Value = Player.RobloxAdvancedDeaths.Value + 1
Player.RobloxAdvancedKillstreak.Value = 0
end
if _G.RobloxAdvanced.RagdollOnDeath == true then
_G.RobloxAdvanced.Ragdoll(true, Character, true)
end
coroutine.wrap(function()
if _G.RobloxAdvanced.DeathGuiEnabled == false then return end
if Player == nil then return end
local PlayerGui = Player:FindFirstChild("PlayerGui")
if PlayerGui == nil then return end
local Gui = Instance.new("ScreenGui")
Gui.Name = "Death"
local Frame = Instance.new("Frame")
Frame.Name = "Black"
Frame.Size = UDim2.new(2, 0, 2, 0)
Frame.Position = UDim2.new(-0.5, 0, -0.5, 0)
Frame.BackgroundColor3 = Color3.new(0, 0, 0)
Frame.BackgroundTransparency = 1
Frame.Parent = Gui
local Label = Instance.new("TextLabel")
Label.Name = "Notification"
Label.Position = UDim2.new(0.5, 0, 0.5, 0)
if Killer ~= nil then
if Killer == Player then
Label.Text = "You have killed yourself."
else
Label.Text = "You have been killed by " ..Killer.Name.. "."
end
else
Label.Text = "You have died."
end
Label.FontSize = "Size24"
Label.TextColor3 = Color3.new(1, 0.5, 0)
Label.TextTransparency = 1
Label.Parent = Frame
Gui.Parent = PlayerGui
wait(0.5)
for i = 1, 0, -0.05 do
Label.TextTransparency = i
wait()
end
Label.BackgroundTransparency = 0
wait(0.5)
for i = 1, 0, -0.025 do
Frame.BackgroundTransparency = i
wait()
end
Frame.BackgroundTransparency = 0
wait(0.5)
for i = 0, 1, 0.05 do
Label.TextTransparency = i
wait()
end
Label.BackgroundTransparency = 1
end)()
wait(4.5)
if Character == nil or _G.RobloxAdvanced.KeepCorpses == false then return end
if Character.Parent == nil then return end
local ReweldNeck = false
if Character:FindFirstChild("Torso") ~= nil then
if Character.Torso:FindFirstChild("Neck") ~= nil then
ReweldNeck = true
end
end
local Model = Instance.new("Model", Workspace)
Model.Name = Character.Name.. "'s Corpse"
for _, Part in pairs(Character:GetChildren()) do
if Part.ClassName == "CharacterMesh" or Part:IsA("Clothing") or Part.ClassName == "ShirtGraphic" then
Part:Clone().Parent = Model
end
for _, Part2 in pairs(Part:GetChildren()) do
if Part2.ClassName == "Sound" then
Part2.SoundId = ""
Part2.Looped = false
Part2.PlayOnRemove = false
Part2.Volume = 0
Part2.Pitch = 0
Part2:Stop()
end
end
if Part.ClassName == "Part" then
pcall(function()
Part.Parent = Model
Part.CanCollide = true
end)
end
end
local Humanoid = Instance.new("Humanoid")
Humanoid.Name = "Corpse"
Humanoid.Health = 0
Humanoid.WalkSpeed = 0
Humanoid.PlatformStand = true
Humanoid.Parent = Model
if ReweldNeck == true then
local Neck = Instance.new("Weld")
Neck.Part0 = Torso
Neck.Part1 = Head
Neck.C0 = CFrame.new(0, 1.5, 0)
Neck.Parent = Torso
end
game:GetService("Debris"):AddItem(Model, _G.RobloxAdvanced.KeepCorpsesTime)
end))
table.insert(_G.RobloxAdvanced.Connections, Character.Humanoid.FallingDown:connect(function() _G.RobloxAdvanced.Ragdoll(true, Character) end))
table.insert(_G.RobloxAdvanced.Connections, Character.Humanoid.GettingUp:connect(function() _G.RobloxAdvanced.Ragdoll(false, Character) end))
coroutine.wrap(function()
local function RemoveLimb(Name)
if Character:FindFirstChild(Name) == nil then return false end
local Model = Instance.new("Model")
Model.Name = "Decapitated Limb"
for _, Part in pairs(Character:GetChildren()) do
if Part.ClassName == "CharacterMesh" or Part:IsA("Clothing") then
Part:Clone().Parent = Model
end
if Part.Name == Name then
pcall(function()
Part.Parent = Model
Part.CanCollide = true
Part:BreakJoints()
end)
end
end
local Humanoid = Instance.new("Humanoid")
Humanoid.Name = "Corpse"
Humanoid.Health = 0
Humanoid.MaxHealth = 0
Humanoid.WalkSpeed = 0
Humanoid.PlatformStand = true
Humanoid.Parent = Model
Model.Parent = Workspace
game:GetService("Debris"):AddItem(Model, _G.RobloxAdvanced.KeepCorpsesTime)
return true, Model
end
while true do
if Character.Parent == nil then break end
if Character:FindFirstChild("Torso") == nil then break end
if Character:FindFirstChild("Humanoid") == nil then break end
if Character.Torso:FindFirstChild("Left Shoulder") == nil and Character.Torso:FindFirstChild("LeftShoulder") == nil and Character.Torso:FindFirstChild("Left Shoulder 2") == nil then
local Blood = _G.RobloxAdvanced.MakeBlood()
Blood.CFrame = Character.Torso.CFrame * CFrame.new(-1.2, 0.5, 0)
Blood.Velocity = (Blood.Position - (Character.Torso.CFrame * CFrame.new(0, 0.5, 0)).p).unit * math.random(10, 25)
Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
if Character:FindFirstChild("Humanoid") ~= nil then Character.Humanoid:TakeDamage(0.25) end
if Character:FindFirstChild("Left Arm") ~= nil then RemoveLimb("Left Arm") end
end
if Character.Torso:FindFirstChild("Right Shoulder") == nil and Character.Torso:FindFirstChild("RightShoulder") == nil and Character.Torso:FindFirstChild("Right Shoulder 2") == nil then
local Blood = _G.RobloxAdvanced.MakeBlood()
Blood.CFrame = Character.Torso.CFrame * CFrame.new(1.2, 0.5, 0)
Blood.Velocity = (Blood.Position - (Character.Torso.CFrame * CFrame.new(0, 0.5, 0)).p).unit * math.random(10, 25)
Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
if Character:FindFirstChild("Humanoid") ~= nil then Character.Humanoid:TakeDamage(0.25) end
if Character:FindFirstChild("Right Arm") ~= nil then RemoveLimb("Right Arm") end
end
if Character.Torso:FindFirstChild("Left Hip") == nil and Character.Torso:FindFirstChild("LeftHip") == nil and Character.Torso:FindFirstChild("Left Hip 2") == nil then
local Blood = _G.RobloxAdvanced.MakeBlood()
Blood.CFrame = Character.Torso.CFrame * CFrame.new(-0.5, -1.2, 0)
Blood.Velocity = (Blood.Position - (Character.Torso.CFrame * CFrame.new(-0.5, 0, 0)).p).unit * math.random(4, 8)
Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
if Character:FindFirstChild("Humanoid") ~= nil then Character.Humanoid:TakeDamage(0.25) end
if Character:FindFirstChild("Left Leg") ~= nil then RemoveLimb("Left Leg") end
end
if Character.Torso:FindFirstChild("Right Hip") == nil and Character.Torso:FindFirstChild("RightHip") == nil and Character.Torso:FindFirstChild("Right Hip 2") == nil then
local Blood = _G.RobloxAdvanced.MakeBlood()
Blood.CFrame = Character.Torso.CFrame * CFrame.new(0.5, -1.2, 0)
Blood.Velocity = (Blood.Position - (Character.Torso.CFrame * CFrame.new(0.5, 0, 0)).p).unit * math.random(4, 80)
Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
if Character:FindFirstChild("Humanoid") ~= nil then Character.Humanoid:TakeDamage(0.25) end
if Character:FindFirstChild("Right Leg") ~= nil then RemoveLimb("Right Leg") end
end
if Character.Torso:FindFirstChild("Neck") == nil then
local Blood = _G.RobloxAdvanced.MakeBlood()
Blood.CFrame = Character.Torso.CFrame * CFrame.new(0, 1, 0)
Blood.Velocity = (Blood.Position - Character.Torso.Position).unit * math.random(25, 75)
Blood.Parent = _G.RobloxAdvanced.BloodEnabled == true and Workspace
if Character:FindFirstChild("Head") ~= nil then
local Blood = _G.RobloxAdvanced.MakeBlood()
Blood.CFrame = Character.Head.CFrame * CFrame.new(0, -0.5, 0)
Blood.Velocity = (Blood.Position - Character.Head.Position).unit * math.random(5, 25)
Blood.Parent = Workspace
end
end
wait(0.11)
end
end)()
end
_G.RobloxAdvanced.Ragdoll = function(Format, Character, Force)
if Force ~= true then
if Character:FindFirstChild("Ragdoll") ~= nil and Format == true then return false end
if Character:FindFirstChild("Ragdoll") == nil and Format == false then return false end
end
local Head = nil
local Torso = nil
local Humanoid = nil
local Dead = false
for _, Children in pairs(Character:GetChildren()) do
if Children.ClassName == "ForceField" then Children:Remove() end
if Children.Name == "" then Children:Remove() end
if Children.Name == "Head" then Head = Children end
if Children.Name == "Torso" then Torso = Children end
if Children.ClassName == "Humanoid" then Humanoid = Children end
if Children:IsA("Accoutrement") then
if Children:FindFirstChild("Handle") ~= nil then
if math.random(1, 3) == 1 then
coroutine.wrap(function()
Children.Parent = Workspace
wait()
Children.Parent = Character
Children.Handle.CanCollide = true
end)()
else
Children.Parent = Workspace
Children.Handle.CanCollide = true
end
else
Children:Remove()
end
end
end
if Humanoid ~= nil then
if Humanoid.Health <= 0 then
Dead = true
end
end
if Torso ~= nil then
for _, Children2 in pairs(Torso:GetChildren()) do
if Children2:IsA("JointInstance") then
Children2:Remove()
end
end
end
if Head ~= nil and (function()
if Dead == true and math.random(1, 2) == 1 then
return true
else
return false
end
end)() == false then
local Neck = Instance.new("Motor6D")
Neck.Name = "Neck"
Neck.Part0 = Torso
Neck.Part1 = Head
Neck.C0 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, math.rad(180))
Neck.C1 = CFrame.new(0, -0.5, 0) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, math.rad(180))
Neck.MaxVelocity = 0.1
Neck.Parent = Torso
end
if Format == true then
local Ragdoll = Instance.new("IntValue")
Ragdoll.Name = "Ragdoll"
Ragdoll.Parent = Character
if Torso ~= nil then
Torso.Velocity = Torso.Velocity / 1.25
Torso.RotVelocity = (Torso.RotVelocity / 1.25) + Vector3.new(math.random(-25, 25), math.random(-25, 25), math.random(-25, 25))
if Dead == true then
if Humanoid ~= nil then
local Humanoid2 = Humanoid:Clone()
wait()
Humanoid:Remove()
Humanoid2.Parent = Character
Humanoid = Humanoid2
end
end
local Limb = Character:FindFirstChild("Right Arm")
if Limb ~= nil then
Limb.Velocity = Torso.Velocity
Limb.CFrame = Torso.CFrame * CFrame.new(1.5, 0, 0)
local Joint = Instance.new("Glue")
Joint.Name = "RightShoulder"
Joint.Part0 = Torso
Joint.Part1 = Limb
Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
Joint.Parent = Torso
local Weight = Instance.new("Part")
Weight.Name = ""
Weight.TopSurface = 0
Weight.BottomSurface = 0
Weight.Shape = "Block"
Weight.FormFactor = "Custom"
Weight.Size = Vector3.new(1, 1, 1)
Weight.Transparency = 1
Weight.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
Weight.Parent = Character
local Weld = Instance.new("Weld")
Weld.Part0 = Limb
Weld.Part1 = Weight
Weld.C0 = CFrame.new(0, -0.5, 0)
Weld.Parent = Limb
end
local Limb = Character:FindFirstChild("Left Arm")
if Limb then
Limb.Velocity = Torso.Velocity
Limb.CFrame = Torso.CFrame * CFrame.new(-1.5, 0, 0)
local Joint = Instance.new("Glue")
Joint.Name = "LeftShoulder"
Joint.Part0 = Torso
Joint.Part1 = Limb
Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
Joint.Parent = Torso
local Weight = Instance.new("Part")
Weight.Name = ""
Weight.TopSurface = 0
Weight.BottomSurface = 0
Weight.Shape = "Block"
Weight.FormFactor = "Custom"
Weight.Size = Vector3.new(1, 1, 1)
Weight.Transparency = 1
Weight.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
Weight.Parent = Character
local Weld = Instance.new("Weld")
Weld.Part0 = Limb
Weld.Part1 = Weight
Weld.C0 = CFrame.new(0, -0.5, 0)
Weld.Parent = Limb
end
local Limb = Character:FindFirstChild("Right Leg")
if Limb then
Limb.Velocity = Torso.Velocity
Limb.CFrame = Torso.CFrame * CFrame.new(0.5, -2, 0)
local Joint = Instance.new("Glue")
Joint.Name = "RightHip"
Joint.Part0 = Torso
Joint.Part1 = Limb
Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
Joint.Parent = Torso
local Weight = Instance.new("Part")
Weight.Name = ""
Weight.TopSurface = 0
Weight.BottomSurface = 0
Weight.Shape = "Block"
Weight.FormFactor = "Custom"
Weight.Size = Vector3.new(1, 1, 1)
Weight.Transparency = 1
Weight.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
Weight.Parent = Character
local Weld = Instance.new("Weld")
Weld.Part0 = Limb
Weld.Part1 = Weight
Weld.C0 = CFrame.new(0, -0.5, 0)
Weld.Parent = Limb
end
local Limb = Character:FindFirstChild("Left Leg")
if Limb then
Limb.Velocity = Torso.Velocity
Limb.CFrame = Torso.CFrame * CFrame.new(-0.5, -2, 0)
local Joint = Instance.new("Glue")
Joint.Name = "LeftHip"
Joint.Part0 = Torso
Joint.Part1 = Limb
Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
Joint.Parent = Torso
local Weight = Instance.new("Part")
Weight.Name = ""
Weight.TopSurface = 0
Weight.BottomSurface = 0
Weight.Shape = "Block"
Weight.FormFactor = "Custom"
Weight.Size = Vector3.new(1, 1, 1)
Weight.Transparency = 1
Weight.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
Weight.Parent = Character
local Weld = Instance.new("Weld")
Weld.Part0 = Limb
Weld.Part1 = Weight
Weld.C0 = CFrame.new(0, -0.5, 0)
Weld.Parent = Limb
end
local Weight = Instance.new("Part")
Weight.Name = ""
Weight.TopSurface = 0
Weight.BottomSurface = 0
Weight.Shape = "Block"
Weight.FormFactor = "Custom"
Weight.Size = Vector3.new(1.75, 1.5, 1.1)
Weight.Transparency = 1
Weight.CFrame = Torso.CFrame * CFrame.new(0, 0.5, 0)
Weight.Parent = Character
local Weld = Instance.new("Weld")
Weld.Part0 = Torso
Weld.Part1 = Weight
Weld.C0 = CFrame.new(0, 0.5, 0)
Weld.Parent = Torso
end
elseif Format == false then
if Character:FindFirstChild("Ragdoll") ~= nil then Character.Ragdoll:Remove() end
if Torso ~= nil then
local Limb = Character:FindFirstChild("Right Arm")
if Limb ~= nil then
local Joint = Instance.new("Motor6D")
Joint.Name = "Right Shoulder"
Joint.Part0 = Torso
Joint.Part1 = Limb
Joint.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
Joint.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
Joint.MaxVelocity = 0.15
Joint.Parent = Torso
end
local Limb = Character:FindFirstChild("Left Arm")
if Limb ~= nil then
local Joint = Instance.new("Motor6D")
Joint.Name = "Left Shoulder"
Joint.Part0 = Torso
Joint.Part1 = Limb
Joint.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
Joint.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
Joint.MaxVelocity = 0.15
Joint.Parent = Torso
end
local Limb = Character:FindFirstChild("Right Leg")
if Limb ~= nil then
local Joint = Instance.new("Motor6D")
Joint.Name = "Right Hip"
Joint.Part0 = Torso
Joint.Part1 = Limb
Joint.C0 = CFrame.new(0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
Joint.C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0)
Joint.MaxVelocity = 0.1
Joint.Parent = Torso
end
local Limb = Character:FindFirstChild("Left Leg")
if Limb ~= nil then
local Joint = Instance.new("Motor6D")
Joint.Name = "Left Hip"
Joint.Part0 = Torso
Joint.Part1 = Limb
Joint.C0 = CFrame.new(-0.5, -1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
Joint.C1 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(-90), 0)
Joint.MaxVelocity = 0.1
Joint.Parent = Torso
end
local Animate = Character:FindFirstChild("Animate")
if Animate ~= nil then
local Animate2 = Animate:Clone()
Animate:Remove()
Animate2.Parent = Character
end
end
else
return false
end
return true, Format
end
table.insert(_G.RobloxAdvanced.Connections, Workspace.DescendantAdded:connect(_G.RobloxAdvanced.HookModelDeath))
table.insert(_G.RobloxAdvanced.Connections, game:GetService("Players").PlayerAdded:connect(_G.RobloxAdvanced.HookPlayerDeath))
for _, Players in pairs(game:GetService("Players"):GetPlayers()) do
_G.RobloxAdvanced.HookPlayerDeath(Players)
end
for _, Children in pairs(Workspace:GetChildren()) do
_G.RobloxAdvanced.HookModelDeath(Children)
end