Untitled
unknown
plain_text
a day ago
1.9 kB
7
Indexable
import pygame
class Player:
def start(self, x, y):
self.alive = True
self.lives = 3
self.main_sprites = [ pygame.image.load("images/player/player-health-0.png"),
pygame.image.load("images/player/player-health-1.png"),
pygame.image.load("images/player/player-health-2.png"),
pygame.image.load("images/player/player-health-3.png")]
self.engine_sprite = pygame.image.load("images/player/engine.png")
self.boost_sprites = self.split_up_spritesheet(pygame.image.load("images/player/engine-flames.png"),48, False)
self.frames_sprites = self.boost_sprites[0]
self.image = self.main_sprites[self.lives]
self.timer = 0
self.sprite_time = 5
self.position = self.image.get_rect()
self.position.center = (x, y)
def animate(self):
self.image = self.main_sprites[self.lives]
index = self.timer // self.sprite_time % len(self.boost_sprites)
self.frame_sprite = self.boost_sprites[index]
self.timer += 1
def draw(self, screen):
if self.alive:
self.animate()
screen.blit(self.engine_sprite, self.position ) #blit() - image, position
screen.blit(self.image, self.position)
screen.blit(self.frames_sprites, self.position)
def split_up_spritesheet(self, spritesheet, size, flipped = False):
sprite_list = []
number_of_sprites = spritesheet.get_width() // size
for x in range(number_of_sprites):
sprite = spritesheet.subsurface(x * size, 0, size, size) #x, y, width, height
sprite = pygame.transform.flip(sprite, flipped, False )
sprite_list.append(sprite)
return sprite_list
Editor is loading...
Leave a Comment