wall border and sticky description

This commit is contained in:
Lukas Kammerhofer
2026-05-07 20:45:07 +02:00
parent 5e7a3197c0
commit 4207ebc45a
+17 -1
View File
@@ -63,6 +63,8 @@ class Map:
# gibt True zurück, wenn der Spieler das Tile betreten darf # gibt True zurück, wenn der Spieler das Tile betreten darf
return self.get_tile(column, row) in ("R", "D,", "H", "S") return self.get_tile(column, row) in ("R", "D,", "H", "S")
# Funktion, um die Map zu erstellen
def draw_map(self, surface: pygame.Surface, font: pygame.font.Font, cam_x: int = 0, cam_y: int = 0) -> None: def draw_map(self, surface: pygame.Surface, font: pygame.font.Font, cam_x: int = 0, cam_y: int = 0) -> None:
# Dict, dass jedem Buchstaben eine Farbe zuordnet # Dict, dass jedem Buchstaben eine Farbe zuordnet
@@ -97,9 +99,23 @@ class Map:
pygame.draw.rect(surface, color, rect) pygame.draw.rect(surface, color, rect)
# die Wände sollen einen zusätzlichen Rand haben mit 1 = Wandbreite in Pixel # die Wände sollen einen zusätzlichen Rand haben mit 1 = Wandbreite in Pixel
if mark = "W": if mark == "W":
pygame.draw.rect(surface, color_border, rect, 1) pygame.draw.rect(surface, color_border, rect, 1)
# geht die Beschriftungen durch
for i in range(len(self.room_decription)):
# entpackt das Tupel in 3 Variablen: column, row, text
column, row, text = self.room_decription[i]
# die Tile-Koordinaten in Pixel umrechnen und addieren von 2, damit der Text nicht ganz am Rand klebt
px = column + tile_size - cam_x + 2
py = row + tile_size - cam_y + 2
# Text-Bild mit fon.render()
# True gibt eine glattere Schrift
# blit() fixiert den Text auf dem Bildschirm
surface.blit(font.render(text, True, color_text), (px, py))