import pygame import random # Initialize Pygame pygame.init() # Set up the window WIDTH, HEIGHT = 800, 600 win = pygame.display.set_mode((WIDTH, HEIGHT)) pygame.display.set_caption("Dracula's Castle Adventure") # Define colors WHITE = (255, 255, 255) RED = (255, 0, 0) # Player class class Player: def __init__(self): self.x = 400 self.y = 300 self.width = 32 self.height = 32 self.speed = 5 self.health = 100 self.attack = 10 self.defense = 5 def draw(self, win): pygame.draw.rect(win, RED, (self.x, self.y, self.width, self.height)) # Room class class Room: def __init__(self, x, y, width, height, description, monsters=[]): self.x = x self.y = y self.width = width self.height = height self.description = description self.monsters = monsters self.visited = False def draw(self, win): pygame.draw.rect(win, WHITE, (self.x, self.y, self.width, self.height)) # Create player instance player = Player() # Create rooms room1 = Room(100, 100, 200, 200, "You are in a dark hallway.") room2 = Room(400, 100, 200, 200, "You are in a dusty library.") room3 = Room(100, 400, 200, 200, "You are in a spooky laboratory.") room4 = Room(400, 400, 200, 200, "You are in a dimly lit crypt.") rooms = [room1, room2, room3, room4] # Game loop running = True while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False # Player movement keys = pygame.key.get_pressed() if keys[pygame.K_LEFT]: player.x -= player.speed if keys[pygame.K_RIGHT]: player.x += player.speed if keys[pygame.K_UP]: player.y -= player.speed if keys[pygame.K_DOWN]: player.y += player.speed # Draw everything win.fill((0, 0, 0)) for room in rooms: room.draw(win) if (player.x >= room.x and player.x <= room.x + room.width) and (player.y >= room.y and player.y <= room.y + room.height): # Display room description font = pygame.font.SysFont(None, 24) text = font.render(room.description, True, WHITE) win.blit(text, (50, HEIGHT - 50)) player.draw(win) pygame.display.update() pygame.quit()