I have a LocalScript in StarterPlayerScripts that plays an animation and places a script that does damage into the brick, although that works perfectly when the damage script is placed into the part it doesn't do any damage for whatever reason. I know that the damage script works on it's own because when I place that same part into the Workspace and place the same damage script inside of it and test it, it works perfectly. I'm starting to think it may have something to do with the fact that the script's parent has a parent that also has a humanoid inside of it or the fact that it's welded. I've been having this issue for too long now please help and explain what I'm doing wrong.
Local Script
--Finds Player--
local UserInputService = game:GetService("UserInputService")
local Player = game.Players.LocalPlayer or game.Players.PlayerAdded:wait()
local Character = Player.Character or Player.CharacterAdded:wait()
local Humanoid = Character:WaitForChild("Humanoid")
local deb = false
local damagescript = game.ReplicatedStorage.DamageScript
--Finds Animations--
local Animation = Instance.new("Animation")
Animation.AnimationId = "rbxassetid://2867339187"
local AnimationR = Instance.new("Animation")
AnimationR.AnimationId = "rbxassetid://2867339668"
local AnimationL = Instance.new("Animation")
AnimationL.AnimationId = "rbxassetid://2867395453"
local Animations = {AnimationL,AnimationR}
local track = Humanoid:LoadAnimation(Animation)
--Just finding the Particles--
local particle = Character:WaitForChild("LeftUpperArm"):WaitForChild("ParticleEmitter")
local particle1 = Character:WaitForChild("RightLowerArm"):WaitForChild("ParticleEmitter")
local particle2 = Character:WaitForChild("RightUpperLeg"):WaitForChild("ParticleEmitter")
local particle3 = Character:WaitForChild("UpperTorso"):WaitForChild("ParticleEmitter")
local particle4 = Character:WaitForChild("LowerTorso"):WaitForChild("ParticleEmitter")
--Funtion That Starts Animation and Enables the Particles--
UserInputService.InputBegan:Connect(function(input, proc)
local track2 = Humanoid:LoadAnimation(Animations[math.random(#Animations)])
if not proc and input.KeyCode == Enum.KeyCode.T then
if deb == true then return end
deb = true
local Damager = damagescript:Clone()
Damager.Parent = Character:WaitForChild("Blast")
particle.Enabled = true
particle1.Enabled = true
particle2.Enabled = true
particle3.Enabled = true
particle4.Enabled = true
track:Play()
wait(0.35)
track:Stop()
track2:Play() --Animaton Follows--
wait(0.45)
track2:Stop()
particle.Enabled = false
particle1.Enabled = false
particle2.Enabled = false
particle3.Enabled = false
particle4.Enabled = false
Damager:Destroy()
deb = false
end
end)
Damage Script
local deb = false
script.Parent.Touched:Connect(function(hit)
local humanoid = hit.Parent:FindFirstChild("Humanoid")
if humanoid then
if not deb then
deb = true
humanoid:TakeDamage(50)
wait(0.2)
deb = false
end
end
end)
