Menu

Python Code For Player Movement For Game

Python Code For Player Movement 👨‍💻 🐍

import pygame

# --- Player Class Setup ---
class Player(pygame.sprite.Sprite):
    def __init__(self, x, y, speed=5):
        super().__init__()
        self.image = pygame.Surface([50, 50])
        self.image.fill((255, 0, 0)) # Red
        self.rect = self.image.get_rect(center=(x, y))
        self.speed = speed

    def update(self):
        """Updates position based on keyboard input."""
        keys = pygame.key.get_pressed()
        dx = (keys[pygame.K_RIGHT] or keys[pygame.K_d]) - (keys[pygame.K_LEFT] or keys[pygame.K_a])
        dy = (keys[pygame.K_DOWN] or keys[pygame.K_s]) - (keys[pygame.K_UP] or keys[pygame.K_w])
        
        # Move rect and keep inside screen
        self.rect.x += dx * self.speed
        self.rect.y += dy * self.speed
        self.rect.clamp_ip(pygame.display.get_surface().get_rect())

# --- Usage Example ---
# pygame.init()
# screen = pygame.display.set_mode((800, 600))
# player = Player(400, 300)
# all_sprites = pygame.sprite.Group(player)
# ... inside loop: all_sprites.update()