'Don't display first frame in Pygame (sprites)

I am making a hit animation for a game made in pygame using sprites. I made it and it works, but my problem is, that after the animation ends, the first frame stays on the screen. Here is my code for the animations:

class HitAnimation(pygame.sprite.Sprite):

        def __init__(self,pos_x,pos_y):
            super().__init__()
            self.sprites = []
            self.is_animating = False
            self.sprites.append(pygame.image.load("hit0.gif").convert_alpha())
            self.sprites.append(pygame.image.load("hit1.gif").convert_alpha())
            self.sprites.append(pygame.image.load("hit2.gif").convert_alpha())
            self.sprites.append(pygame.image.load("hit3.gif").convert_alpha())
            self.sprites.append(pygame.image.load("hit4.gif").convert_alpha())
            self.current_sprite = 0
            self.image = self.sprites[self.current_sprite]
            self.rect = self.image.get_rect()
            self.rect.topleft = [pos_x,pos_y]

        def animate(self):
            self.is_animating = True
        
        def update(self):
            if self.is_animating == True:
                self.current_sprite += 0.3

                if self.current_sprite >= len(self.sprites):
                    self.current_sprite = 0
                    self.is_animating = False

                self.image = self.sprites[int(self.current_sprite)]

moving_hitsprites = pygame.sprite.Group()

Than later in the main game function:

while True:
   #basic stuff, the game itself
   #than here I am updating and drawing the hit animation
   moving_hitsprites.update()
   moving_hitsprites.draw(WIN)

   if event.type==PLAYER1_HIT:
       location = HitAnimation(playerrect.x-playerrect.width//2,playerrect.y-playerrect.height//2)
       moving_hitsprites.add(location)
       location.animate() # here I am starting the animation of the hit effect

The animation appears, but after it goes through all the frames, and after its done it will continue to display the first frame forever. How can I fix this?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source