So basically I wrote a script where when I would touch it, it would weld to my hrp (HumanoidRootPart) and have a position of 10 studs high to look like it was above my head floating. Although, It doesn't look too good so I decided I was going to add a floating part tween to the part. (I did tween the weld because tweening a welded part doesn't work) The tween plays but in the wrong direction. Also even when I change the position. It does the same tween, and it's like the position set hasn't even changed for the computer. Like regularly Y 3 would go up Y -3 would go down. That's not the case in this, not only does it not change the down or up. It doesn't EVEN go down or up it goes side to side with a slight curve even though I am using UpVector. Here is the script:
local weld = Instance.new("Weld")
local wp = script.Parent
local twServ = game:GetService("TweenService")
local twInfo = TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut, -1, true, 0)
local debounce = true
function Stepped(hit)
if hit.Parent:FindFirstChild("Humanoid") then
local hrp = hit.Parent.HumanoidRootPart
local tw = twServ:Create(weld, twInfo, {C0 = weld.C0 + weld.C0.UpVector * 3})
if debounce == true then
debounce = false
wp.Anchored = false
wp.CFrame = hrp.CFrame + Vector3.new(0,10,0)
weld.Part0 = hrp
weld.Part1 = wp
weld.C0 = hrp.CFrame:Inverse()
weld.C1 = wp.CFrame:Inverse()
weld.Parent = wp
tw:Play()
wait(2)
end
end
end
wp.Touched:Connect(Stepped)
here is main line in the script that I'm talking about:
local tw = twServ:Create(weld, twInfo, {C0 = weld.C0 + weld.C0.UpVector * 3})
also here is a video of what the tween looks like https://i.gyazo.com/df29cef377cce047006ecdc0172c10a2.mp4
