Retaining attachment position offset relative to the Size of a part

Hi, the title may seem complicated, but what I’m trying to accomplish is relatively simple. Essentially, I have two attachments placed on a flat shield part. The shield slowly diminishes over time, so the part slowly gets smaller. The attachments do not reflect this change in size, and that is where the problem begins. How do I ensure that these attachment positions stay relative to the size?

–Note: I already think I have a way to go about this, but I am interested if there is a method that is more accurate and simple.

Try checking for whenever the Shield’s Size(?) Property changes and use the Shields CFrame:ToObjectSpace() on the Attachments. This will make the Attachments CFrames’ relative to the shield’s CFrame along with the Offset given.

-- Connection(?) to check whenever the Size changes
Attachment.CFrame = Shield.CFrame:ToObjectSpace(CFrame.new(0, 0, 0)) -- Assuming the 0 CFrame is the offset

I tried this method, I seems to not be working…
I don’t need to listen to the property change for when the shield changes size since the size updates based on when an attribute changes, meaning I can update the attachment position immediately after the size is changed. This method has really strange results, and I think I might need to clarify things so I’m going to upload an image showing the shield and the attachments.

The ring is just two beams connected to two attachments, and I want the ring to shrink with the shield, hence why I need to have them remain relative to the Size of the shield.

Assuming its positioned at y then just re-position it depending on the current size?

Attachment.Position = Size.Y/2
Attachment2.Position = -Size.Y/2

This was what I was thinking originally, and would probably work well enough, but I actually found a post solving my exact problem! I’ll link the post and mark it as the solution.