Prevent Player Sliding/Flinging

I want the AssemblyLinearVelocity and AssemblyAngularVelocity properties to be disabled when a player interacts with it, so if either of those values are greater than (0, 0, 0) the player won’t start sliding around. However, I want those properties to still affect the part itself, so it can be flung around the map. I’m not sure how to achieve this (maybe the answer is in Roblox’s player scripts?), but if anyone knows, I would greatly appreciate it!