-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathspritesheet.py
33 lines (23 loc) · 1015 Bytes
/
spritesheet.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
"""
This module is used to pull individual sprites from sprite sheets.
"""
import pygame
from nax import COLORS
class SpriteSheet(object):
""" Class used to grab images out of a sprite sheet. """
def __init__(self, file_name):
""" Constructor. Pass in the file name of the sprite sheet. """
# Load the sprite sheet.
self.sprite_sheet = pygame.image.load(file_name).convert()
def get_image(self, x, y, width, height):
""" Grab a single image out of a larger spritesheet
Pass in the x, y location of the sprite
and the width and height of the sprite. """
# Create a new blank image
image = pygame.Surface([width, height]).convert()
# Copy the sprite from the large sheet onto the smaller image
image.blit(self.sprite_sheet, (0, 0), (x, y, width, height))
# Assuming black works as the transparent color
image.set_colorkey(COLORS.get('BLACK'))
# Return the image
return image