Currently I'm working on a game in pygame which is inspired by a game called "recrew" (it was made on the global game jam 2020) The goal is to extend the ship, explore Islands and prevent your ship from sinking.
For a better feeling I wand to rotate the whole ship. The ship is represented as a class with all block saved into a list. Every block is a single pygame.Surface which gets rendered in the ship class. Is there a way to rotate all these Blocks dynamically so that instead of every block rotating and not changing Position the whole ship dynamically rotates.
Maybe the blocks could all be merged into a big Surface relative to their position or the part of the main Window Surface with the blocks gets saved onto another Surface. I just don't know a good way to solve this problem.