I’ve tried everything from BodyVelocity to ApplyImpulse to VectorForce.
I’m now trying to use AssemblyLinearVelocity and once again having issues.
As you can see in this video, the part displays the direction of where the velocity should be applied. It works sometimes but you can see at the end for some reason it goes towards my character.
function MovesManager:Knockback(Attacker, Target, Power, Length, FaceDirection, OnEnd, ExtraSettings)
if not Target.PrimaryPart:FindFirstChildWhichIsA("BodyVelocity") then
Target:FindFirstChildWhichIsA("Humanoid").AutoRotate = false
Target.PrimaryPart.AssemblyLinearVelocity = ((ExtraSettings["LookDirection"] or Attacker.PrimaryPart.CFrame.LookVector) * (Power*3))
print(Target.PrimaryPart.AssemblyLinearVelocity)
if FaceDirection and FaceDirection == true then
Target.PrimaryPart.CFrame = CFrame.new(Target.PrimaryPart.Position, Attacker.PrimaryPart.Position)
end
task.delay(Length, function()
Target:FindFirstChildWhichIsA("Humanoid").AutoRotate = true
if OnEnd then OnEnd() end
end)
end
end
This is the code i’m using for knockback, but it seems to happen mostly on the kick, sure it could be since it does a full spin but I call the function with the LookVector before the animation and as you can see, the part does seem to go in the right direction