The first 3 or so times you hit the button, everything works perfectly. After that, however, things get weird. I’m not sure what’s responsible for this problem (maybe the rope constraints?), but here’s a video of the problem if you think you can help:
local function ram_strike()
if cooldown == false then
cooldown = true
TweenService:Create(part, ChargeInfo, {CFrame = part.CFrame * CFrame.new(7,1.5,0)}):play()
wait(1.4) -- Tween 1 duration
TweenService:Create(part, SwingInfo, {CFrame = part.CFrame * CFrame.new(-9,0,0)}):play()
wait(3) -- Tween 2 duration
wait(2) -- Extra delay
cooldown = false
end
end
I also checked multiple times to make sure the ram wasn’t getting caught on anything and that all the parts that would collide with it have CanCollide disabled
This is out of left field, but if the ram isn’t completely stopping all motion before you hit the ram button again, won’t it pull the cframe from a moving part, and maybe cause this issue? have you tried letting it completely stop before doing it again?
This is also prob off topic, but i notice in the video the back rear wheel is moving off its orientation… is this also supposed to be happening? Just seeing if its all related, or if its a tween issue.
Ok, it reminded me of another post where someones train did the same jittery effect and i believe they had two hinge constraints working against each other.
Unfortunately these both yielded the same result, I’m going to try making a third tween so that it doesn’t rely on the “snap” of the rope constraints to send the ram back to its original position