Thank you for the feedback! The reason it snap rotates is because I made it in scratch, so doing all that math would have killed me, making it snap made it much simpler.