This is a script I made for a simple lunge, with this being the default tool grip:
local tool = script.Parent
local function onActivate()
-- SWITCH TO LUNGE
tool.GripForward = Vector3.new(0,1,0)
tool.GripPos = Vector3.new(0,0,-0.5)
tool.GripRight = Vector3.new(1,0,0)
tool.GripUp = Vector3.new(0,-0,1)
wait(1)
-- SWITCH BACK TO DEFAULT
tool.GripForward = Vector3.new(0,0,-1)
tool.GripPos = Vector3.new(0,-0.5,0)
tool.GripRight = Vector3.new(1,0,0)
tool.GripUp = Vector3.new(1,0,0)
end
tool.Activated:Connect(onActivate)
However, it gets messed up:
Top being how it is at first, middle being how it becomes during the 1 second, and bottom how it is after.
Any explanations for this? It doesn’t restore to the original state, even with the correct vectors.