Skip to content

Commit 062f139

Browse files
committed
Change the way sprites are loaded to improve expandability
1 parent 8de2b2c commit 062f139

File tree

1 file changed

+9
-88
lines changed

1 file changed

+9
-88
lines changed

sprites.py

Lines changed: 9 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -62,101 +62,22 @@ def blit_sprite(sprite: pygame.surface.Surface,
6262
screen.blit(sprite, location)
6363

6464

65-
bomb_explode_sprite = pygame.image.load(load_file("textures/bomb_explode.png"))
66-
bomb_no_sprite = pygame.image.load(load_file("textures/bomb_no.png"))
67-
bomb_sprite = pygame.image.load(load_file("textures/bomb.png"))
68-
69-
clock_null_sprite = pygame.image.load(load_file("textures/clock_null.png"))
70-
clock_zero_sprite = pygame.image.load(load_file("textures/clock_zero.png"))
71-
clock_one_sprite = pygame.image.load(load_file("textures/clock_one.png"))
72-
clock_two_sprite = pygame.image.load(load_file("textures/clock_two.png"))
73-
clock_three_sprite = pygame.image.load(load_file("textures/clock_three.png"))
74-
clock_four_sprite = pygame.image.load(load_file("textures/clock_four.png"))
75-
clock_five_sprite = pygame.image.load(load_file("textures/clock_five.png"))
76-
clock_six_sprite = pygame.image.load(load_file("textures/clock_six.png"))
77-
clock_seven_sprite = pygame.image.load(load_file("textures/clock_seven.png"))
78-
clock_eight_sprite = pygame.image.load(load_file("textures/clock_eight.png"))
79-
clock_nine_sprite = pygame.image.load(load_file("textures/clock_nine.png"))
80-
81-
one_sprite = pygame.image.load(load_file("textures/one.png"))
82-
two_sprite = pygame.image.load(load_file("textures/two.png"))
83-
three_sprite = pygame.image.load(load_file("textures/three.png"))
84-
four_sprite = pygame.image.load(load_file("textures/four.png"))
85-
five_sprite = pygame.image.load(load_file("textures/five.png"))
86-
six_sprite = pygame.image.load(load_file("textures/six.png"))
87-
seven_sprite = pygame.image.load(load_file("textures/seven.png"))
88-
eight_sprite = pygame.image.load(load_file("textures/eight.png"))
89-
90-
flag_sprite = pygame.image.load(load_file("textures/flag.png"))
91-
92-
question_mark_sprite = pygame.image.load(load_file("textures/question_mark.png"))
93-
94-
smiley_rip_sprite = pygame.image.load(load_file("textures/smiley_rip.png"))
95-
smiley_wow_sprite = pygame.image.load(load_file("textures/smiley_wow.png"))
96-
smiley_yeah_sprite = pygame.image.load(load_file("textures/smiley_yeah.png"))
97-
smiley_sprite = pygame.image.load(load_file("textures/smiley.png"))
98-
99-
tile = pygame.image.load(load_file("textures/tile.png"))
65+
sprites_folder_path = load_file("textures/")
66+
67+
68+
def image_loader(path: str) -> str:
69+
for i in os.listdir(path):
70+
yield ((os.path.splitext(i)[0]),
71+
pygame.image.load(path + i).convert_alpha())
10072

10173

10274
class Sprites:
10375
def __init__(self):
104-
self.sprites = {
105-
"bomb_explode": bomb_explode_sprite,
106-
"bomb_no": bomb_no_sprite,
107-
"bomb": bomb_sprite,
108-
"clock_null": clock_null_sprite,
109-
"clock_zero": clock_zero_sprite,
110-
"clock_one": clock_one_sprite,
111-
"clock_two": clock_two_sprite,
112-
"clock_three": clock_three_sprite,
113-
"clock_four": clock_four_sprite,
114-
"clock_five": clock_five_sprite,
115-
"clock_six": clock_six_sprite,
116-
"clock_seven": clock_seven_sprite,
117-
"clock_eight": clock_eight_sprite,
118-
"clock_nine": clock_nine_sprite,
119-
"one": one_sprite,
120-
"two": two_sprite,
121-
"three": three_sprite,
122-
"four": four_sprite,
123-
"five": five_sprite,
124-
"six": six_sprite,
125-
"seven": seven_sprite,
126-
"eight": eight_sprite,
127-
"flag": flag_sprite,
128-
"question_mark": question_mark_sprite,
129-
"smiley_rip": smiley_rip_sprite,
130-
"smiley_wow": smiley_wow_sprite,
131-
"smiley_yeah": smiley_yeah_sprite,
132-
"smiley": smiley_sprite,
133-
"tile": tile
134-
}
135-
136-
for i, sprite in self.sprites.items():
137-
sprite = sprite.convert_alpha()
76+
self.sprites = dict(image_loader(sprites_folder_path))
13877

13978

14079
def main():
141-
# Testing automatic loading of sprites
142-
sprites_folder_path = "textures/"
143-
144-
def image_loader(path) -> str:
145-
for i in os.listdir(path):
146-
yield ((os.path.splitext(i)[0]),
147-
pygame.image.load(path + i).convert_alpha)
148-
149-
images = dict(image_loader(sprites_folder_path))
150-
151-
for image in images:
152-
print(image, end='')
153-
154-
print()
155-
156-
sprites = Sprites().sprites
157-
158-
for sprite in sprites:
159-
print(sprite, end='')
80+
pass
16081

16182

16283
if __name__ == "__main__":

0 commit comments

Comments
 (0)