feat(endscreen): implement simple endscreen with differentiation between won/lose

This commit is contained in:
Kevin Baumgartner
2026-05-08 15:07:17 +02:00
parent 7a5d063de6
commit 975d0d1e71
+47 -1
View File
@@ -47,4 +47,50 @@ class Endscreen:
)
def run(self):
pass
# get events
events = pygame.event.get()
for event in events:
if event.type == pygame.QUIT:
return "quit"
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_RETURN:
return "game"
if event.key == pygame.K_ESCAPE:
return "startscreen"
# draw background
self.screen.fill(self.background_color)
# create texts depending on win/lose
if self.won:
title_text = "EXAM PASSED!"
title_color = self.win_color
message_lines = [
"Congratulations, student.",
"You survived the night shift at FH Kapfenberg.",
"Your ECTS have ben successfully submitted."
]
else:
title_text = "EXMATRICULATED!"
title_color = self.lose_color
message_lines = [
"The lecturers found you.",
"Your assignment was not submitted in time.",
"Please retake the semester."
]
# draw title/texts
title = self.font_title.render(title_text, True, title_color)
title_rect = title.get_rect(center=(480, 90))
self.screen.blit(title, title_rect)
y = 160
for line in message_lines:
message = self.font_small.render(line, True, self.text_color)
message_rect = message.get_rect(center=(480, y))
self.screen.blit(message, message_rect)
y += 32