This is an issue i’ve never found a solution for. As you can see, the wheel has a teeth that is supposed to touch with the part at the end of the hammer. But it seems to be triggering the touch event even when it’s not actually touching the part. I’ve tried several workarounds, but none were successful.
The wheel has a HingeConstraint with a Motor as its ActuatorType
You might want to turn on your Geometry under settings and see if something else on that part is hitting your anchored part… I assume the wheel is unanchored right? since it is constrained to a base?
A good way to start would be ensuring that the hit part is the intended part.
This is good practice with any .Touched event.
local intended = workspace.Part
script.Parent.Model.Model.lil.Touched:Connect(function(hit)
if hit ~= intended then return end
script.Parent.HingeConstraint.MotorMaxTorque=100000
task.wait(0.5)
script.Parent.HingeConstraint.MotorMaxTorque=0
end)
Otherwise if you’re using a union, the physics on unions are very iffy and you should resort to a system that relies more on a mathematically derived predicted position rather than the roblox physics engine. This is also viable and possibly more reliable even if you’re just using regular parts.