I am trying to make my attack curve in the direction the player is facing but the offset from each part still staying the same so if I were to run really fast they wouldn't be hugely separated but still conjoined together just turned in the direction you're facing

local offset = 7
local prev

for i = 1, 8 do

if i == 1 then
local part = game.ServerStorage.ElementParts.Fire["Fire Trail"]:Clone()
part.Parent = game.Workspace
part.CFrame = root.CFrame * CFrame.new(0,0,-10)		
prev = part
game.Debris:AddItem(part, 14)
else

local part = game.ServerStorage.ElementParts.Fire["Fire Trail"]:Clone()
part.Parent = game.Workspace
part.CFrame = prev.CFrame  * CFrame.new(root.CFrame.LookVector.x * offset, 0, root.CFrame.LookVector.z * offset)
print(root.CFrame.LookVector)
prev = part
game.Debris:AddItem(part, 14)
end

wait(0.1)
end

prev = nil

This is the desired https://gyazo.com/22ef9a13c6148683d559fd94eded66a8

However if I turn in any other direction https://gyazo.com/39f32bc0f50fb3cda69931f4c78f6c27 it doesn't work and this happens.