Im trying to make a simple ability (note i made it so the player is detected on purpose for debugging)
Script in ServerScriptService
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SecularDirectory = ReplicatedStorage.Abilities.Secular
SecularDirectory["Soul Piercer"].Cast.OnServerEvent:Connect(function(player)
if player.stats.soul.Value >= 20 then
local char = player.Character
local hum = char:WaitForChild("Humanoid")
local Anim = hum:LoadAnimation(SecularDirectory["Soul Piercer"].Animation)
Anim.Looped = true
Anim:Play()
--// Parenting \\--
local SoulPierce = SecularDirectory["Soul Piercer"].SoulPierce:Clone()
SoulPierce.Parent = char
SoulPierce.HandWeld.Part1 = char["Left Arm"]
--// Hitbox Detecting \\--
local parts = game.Workspace:GetPartsInPart(SoulPierce.Hitbox)
print(parts)
for i, v in parts do
if v.Parent:WaitForChild("Humanoid") then
if v.Parent:FindFirstChildOfClass("Tool") then
local enemy = game.Players:GetPlayerFromCharacter(v.Parent)
local statsFolder = enemy:WaitForChild("stats")
local posture = statsFolder:WaitForChild("posture")
posture.Value -= 10
end
end
end
wait(0.1)
SoulPierce:Destroy()
end
end)
Also yes, the part spawns, gets welded, and the animation plays, my only issue is with everything BELOW the "local parts = game.Workspace:GetPartsInPart(SoulPierce.Hitbox)" and yes there is 0 errors.
