Xây dựng và trực quan hóa trò chơi Sudoku bằng Pygame
Sudoku là một trò chơi giải đố sắp xếp số dựa trên logic, kết hợp. Mục tiêu là...
Category: Pygame
Để tạo trò chơi hoặc hoạt ảnh bằng Python với PyGame , việc di chuyển một đối tượng trên màn hình là một trong những điều đầu tiên cần học. Chúng ta sẽ xem cách di chuyển một đối tượng sao cho nó di chuyển theo chiều ngang khi nhấn phím mũi tên phải hoặc phím mũi tên trái trên bàn phím và di chuyển theo chiều dọc khi nhấn phím mũi tên lên hoặc phím mũi tên xuống. Chúng ta sẽ tạo một cửa sổ trò chơi, vẽ một đối tượng và cập nhật vị trí của nó dựa trên dữ liệu đầu vào của người dùng.
Thay đổi tọa độ cho các phím tương ứng được nhấn:
Left arrow key: Decrement in x co-ordinate
Right arrow key: Increment in x co-ordinate
Up arrow key: Decrement in y co-ordinate
Down arrow key: Increment in y co-ordinate
Trước khi bắt đầu, hãy đảm bảo PyGame đã được cài đặt. Chúng ta có thể cài đặt bằng cách:
pip install pygame
Trong đoạn mã này, chúng ta tạo một cửa sổ bằng PyGame và vẽ một hình chữ nhật trên màn hình. Hình chữ nhật có thể được di chuyển bằng các phím mũi tên và vị trí của nó sẽ được cập nhật khi chúng ta nhấn các phím. Điều này giúp học cách xử lý chuyển động và đầu vào của người dùng trong PyGame.
import pygame
pygame.init()
win = pygame.display.set_mode((500, 500))
pygame.display.set_caption("Moving rectangle")
x = 200
y = 200
width = 20
height = 20
vel = 10
run = True
# vòng lặp vô hạn
while run:
pygame.time.delay(10)
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT] and x>0:
x -= vel
if keys[pygame.K_RIGHT] and x<500-width:
x += vel
if keys[pygame.K_UP] and y>0:
y -= vel
if keys[pygame.K_DOWN] and y<500-height:
y += vel
win.fill((0, 0, 0))
pygame.draw.rect(win, (255, 0, 0), (x, y, width, height))
pygame.display.update()
pygame.quit()
Đầu ra:
Giải thích: Mã này -
Nhập và khởi tạo Pygame để sử dụng các tính năng của nó.
Tạo cửa sổ trò chơi có kích thước 500x500 và đặt tiêu đề.
Xác định vị trí hình chữ nhật (x, y) , kích thước và tốc độ.
Chạy vòng lặp để giữ cửa sổ hoạt động cho đến khi đóng.
Sử dụng pygame.event.get() để phát hiện sự kiện thoát.
Sử dụng pygame.key.get_pressed() để phát hiện các lần nhấn phím mũi tên.
Cập nhật vị trí của hình chữ nhật dựa trên phím nhập.
Xóa màn hình và vẽ lại hình chữ nhật sau mỗi khung hình.
Làm mới màn hình bằng cách sử dụng pygame.display.update() .
Thoát khỏi Pygame khi vòng lặp kết thúc.
Published on Jul 28, 2025
Sudoku là một trò chơi giải đố sắp xếp số dựa trên logic, kết hợp. Mục tiêu là điền các chữ số vào lưới 9x9 sao cho mỗi cột, mỗi hàng và mỗi ô lưới....
Thuật toán như Tìm kiếm Nhị phân có thể được hiểu dễ dàng bằng cách trực quan hóa. Bài viết này trình bày một chương trình trực quan hóa Thuật toá...
Thuật toán sắp xếp chèn có thể dễ dàng được hiểu bằng cách trực quan hóa. Trong bài viết này, một chương trình trực quan hóa thuật toán sắp xếp ch...
Thuật toán sắp xếp Heap có thể được hiểu dễ dàng bằng cách trực quan hóa. Bài viết này trình bày một chương trình trực quan hóa Thuật toán sắp xếp...
Thuật toán như Tìm kiếm Tam phân có thể được hiểu dễ dàng bằng cách trực quan hóa. Bài viết này trình bày một chương trình trực quan hóa Thuật toá...
Trong bài viết này, chúng ta sẽ xem cách hình dung thuật toán sắp xếp nổi bọt (bubble sort ) bằng PyGame. Cụ thể, khi khởi động ứng dụng PyGame,....