Well there is multiple ways to do things, like in puzzle also creating the puzzle is a puzzle for me ![]()
What I would do is actually can be quite simple rather than checking the rotations, however its your choice ofcourse.
I would place a function on correct side normal from each pillar and expect them to hit central pillar counting 4.
When 4 number of hits reached its solved.
- Function to : From Pillar to Forward Vector SingleRayCast 20m and check if hit object is centerpillar.
- raycast each pillar function when one of them is interacted.
- Check function to IsSolved
Think like its a mirror refecting laser beams