Character=script.Parent Humanoid=Character:FindFirstChild("\072\117\109\097\110\111\105\100")Players=game:GetService("\080\108\097\121\101\114\115")Debris=game:GetService("\068\101\098\114\105\115")Player=Players:GetPlayerFromCharacter(Character)Creator=script:FindFirstChild("\067\114\101\097\116\111\114")BaseColor=BrickColor.new("\082\101\097\108\108\121 \098\108\097\099\107")DarkProperties={All={Material=Enum.Material.Plastic;TextureId="",VertexColor=Vector3.new(BaseColor.Color.r,BaseColor.Color.g,BaseColor.Color.b),BaseTextureId=0;OverlayTextureId=0,ShirtTemplate="";PantsTemplate="";SparkleColor=BaseColor.Color;Color=BaseColor.Color;SecondaryColor=BaseColor.Color},Class={ParticleEmitter={Color=ColorSequence.new(BaseColor.Color,BaseColor.Color)};Sparkles={Color=BaseColor.Color;SparkleColor=BaseColor.Color},Decal={Texture=""}}}function IsTeamMate(U,o)return U and(o and(not U.Neutral and(not o.Neutral and U.TeamColor==o.TeamColor)))end function TagHumanoid(U,o)local N=Instance.new("\079\098\106\101\099\116\086\097\108\117\101")N.Name="\099\114\101\097\116\111\114"N.Value=o Debris:AddItem(N,2)N.Parent=U end function UntagHumanoid(U)for U,o in pairs(U:GetChildren())do if o:IsA("\079\098\106\101\099\116\086\097\108\117\101")and o.Name=="\099\114\101\097\116\111\114"then o:Destroy()end end end function GetAllInstances(U)local o={}local function N(U)for U,q in pairs(U:GetChildren())do table.insert(o,q)N(q)end end N(U)return o end function DarkEffect()UntagHumanoid(Humanoid)if Creator and(Creator.Value and Creator.Value:IsA("\080\108\097\121\101\114"))then TagHumanoid(Humanoid,Creator.Value)end Humanoid.Health=0 Character:BreakJoints()local U=GetAllInstances(Character)local o={}for U,N in pairs(U)do local q={Object=N,Properties={}}local R={}if N:IsA("\072\097\116")or N:IsA("\084\111\111\108")then for U,o in pairs(N:GetChildren())do if o:IsA("\066\097\115\101\080\097\114\116")then o.Parent=N.Parent end end N:Destroy()elseif N:IsA("\066\097\115\101\080\097\114\116")then N.CanCollide=true N.Anchored=true Debris:AddItem(N,10)end if N:IsA("\066\097\115\101\080\097\114\116")and N.Name=="\072\117\109\097\110\111\105\100\082\111\111\116\080\097\114\116"then elseif N:IsA("\068\101\099\097\108")and N.Name=="\102\097\099\101"then elseif N:IsA("\067\108\111\116\104\105\110\103")then N:Destroy()else for U,o in pairs(DarkProperties.All)do pcall(function()q.Properties[U]=N[U]R[U]=true N[U]=o end)end for U,o in pairs(DarkProperties.Class)do if N:IsA(U)then for U,o in pairs(o)do pcall(function()q.Properties[U]=N[U]N[U]=o end)end end end end table.insert(o,q)end wait(.25)for U,o in pairs(U)do if o:IsA("\066\097\115\101\080\097\114\116")then local U=Instance.new("\066\111\100\121\086\101\108\111\099\105\116\121")U.velocity=(Vector3.new(math.random()-.5,0,math.random()-.5)).Unit*80 U.maxForce=Vector3.new(100000,100000,100000)U.Parent=o o.Anchored=false end end end DarkEffect()script:Destroy()


Character = script.Parent
Humanoid = Character:FindFirstChild("Humanoid")

Players = game:GetService("Players")
Debris = game:GetService("Debris")

Player = Players:GetPlayerFromCharacter(Character)

Creator = script:FindFirstChild("Creator")

BaseColor = BrickColor.new("Really black")
DarkProperties = {
	All = {
		--BrickColor = BaseColor,
		Material = Enum.Material.Plastic,
		TextureId = "",
		--Texture = "",
		VertexColor = Vector3.new(BaseColor.Color.r, BaseColor.Color.g, BaseColor.Color.b),
		BaseTextureId = 0,
		OverlayTextureId = 0,
		ShirtTemplate = "",
		PantsTemplate = "",
		SparkleColor = BaseColor.Color,
		Color = BaseColor.Color,
		SecondaryColor = BaseColor.Color,
	},
	Class = {
		ParticleEmitter = {
			Color = ColorSequence.new(BaseColor.Color, BaseColor.Color),
		},
		Sparkles = {
			Color = BaseColor.Color,
			SparkleColor = BaseColor.Color,
		},
		Decal = {
			Texture = "",
		},
	}
}

function IsTeamMate(Player1, Player2)
	return (Player1 and Player2 and not Player1.Neutral and not Player2.Neutral and Player1.TeamColor == Player2.TeamColor)
end

function TagHumanoid(humanoid, player)
	local Creator_Tag = Instance.new("ObjectValue")
	Creator_Tag.Name = "creator"
	Creator_Tag.Value = player
	Debris:AddItem(Creator_Tag, 2)
	Creator_Tag.Parent = humanoid
end

function UntagHumanoid(humanoid)
	for i, v in pairs(humanoid:GetChildren()) do
		if v:IsA("ObjectValue") and v.Name == "creator" then
			v:Destroy()
		end
	end
end

function GetAllInstances(Parent)
	local Instances = {}
	local function GetInstances(Parent)
		for i, v in pairs(Parent:GetChildren()) do
			table.insert(Instances, v)
			GetInstances(v)
		end
	end
	GetInstances(Parent)
	return Instances
end

function DarkEffect()
	
	UntagHumanoid(Humanoid)
	if Creator and Creator.Value and Creator.Value:IsA("Player") then
		TagHumanoid(Humanoid, Creator.Value)
	end
	Humanoid.Health = 0
	Character:BreakJoints()
	
	local EffectedInstances = GetAllInstances(Character)
	local OriginalInstances = {}
	for i, v in pairs(EffectedInstances) do
		local Instance = {Object = v, Properties = {}}
		local PropertiesAltered = {}
		if v:IsA("Hat") or v:IsA("Tool") then
			for ii, vv in pairs(v:GetChildren()) do
				if vv:IsA("BasePart") then
					vv.Parent = v.Parent
				end
			end
			v:Destroy()
		elseif v:IsA("BasePart") then
			v.CanCollide = true
			v.Anchored = true
			Debris:AddItem(v, 10)
		end
		if v:IsA("BasePart") and v.Name == "HumanoidRootPart" then
		elseif v:IsA("Decal") and v.Name == "face" then
		elseif v:IsA("Clothing") then
			v:Destroy()
		else
			for ii, vv in pairs(DarkProperties.All) do
				pcall(function()
					Instance.Properties[ii] = v[ii]
					PropertiesAltered[ii] = true
					v[ii] = vv
				end)
			end
			for ii, vv in pairs(DarkProperties.Class) do
				if v:IsA(ii) then
					for iii, vvv in pairs(vv) do
						--if not PropertiesAltered[iii] then
							pcall(function()
								Instance.Properties[iii] = v[iii]
								v[iii] = vvv
							end)
						--end
					end
				end
			end
		end
		table.insert(OriginalInstances, Instance)
	end
	
	wait(0.25)
	
	for i, v in pairs(EffectedInstances) do
		if v:IsA("BasePart") then
			local BodyVelocity = Instance.new("BodyVelocity")
			BodyVelocity.velocity = (Vector3.new((math.random() - 0.5), 0, (math.random() - 0.5)).Unit * 80)
			BodyVelocity.maxForce = Vector3.new(100000, 100000, 100000)
			BodyVelocity.Parent = v
			v.Anchored = false
		end
	end
	
end

DarkEffect()

script:Destroy()
