Is there a way to lock a part's orientation property?

I have a script in my model placing system that makes a model’s primary part have the orientation of the player’s plot. Some models get flipped while I do, so is there a to lock a orientation or even when making a model’s parts a union make a certain part in the union the union’s orientation. Please help!!!

Your question is a bit confusing, could you explain what you want using different words?

What he means is that he wants to know if there is a way to not change your parts orientation. A way to lock it at 0,0,0.

I think you can just change it to a set orientation when the property of it changes.

part:GetPropertyChangedSignal("Orientation"):Connect(function()
    part.Orientation = Vector3.new(0, 0, 0) --Change this to whatever you want it to lock to.
end)

This probably isn’t such a reliable method, but it might work.

Maybe turn can collide off for the unions/parts

There are many ways that I can think of off the top of my head.

  • Make sure Part.RotVelocity or Part.Velocity is 0, 0, 0. If you haven’t manually changed it, it shouldn’t be anything else.
  • Anchor the part.
  • Turn off CanCollide so its position can’t be modified by any other users.
  • As @GalaxyGourmet suggested, if none of the above work:

Above is a bit of a hacky and unreliable method, but if push comes to shove, it will do the trick.

Apart from that, Studio gives you all the tools you need to lock those properties.

When you create a Union, whichever Part you select first determines the orientation of the resulting Union. When you do it from a script using Part:UnionAsync(list of other parts), the part you call the function on is the one that determines the orientation of the Union created.

5 Likes