pygame.transform.rotate
will not rotate the Surface
in place, but rather return a new, rotated Surface
. Even if it would alter the existing Surface
, you would have to blit it on the display surface again.
What you should do is to keep track of the angle in a variable, increase it by 90
every 10 seconds, and blit the new Surface
to the screen, e.g.
angle = 0
...
while True:
...
elif end - new > 10:
...
# increase angle
angle += 90
# ensure angle does not increase indefinitely
angle %= 360
# create a new, rotated Surface
surf = pygame.transform.rotate(image_surf, angle)
# and blit it to the screen
display_surf.blit(surf, (640, 480))
...