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
Pygame là một bộ mô-đun Python đa nền tảng được thiết kế để viết trò chơi điện tử. Nó bao gồm các thư viện đồ họa máy tính và âm thanh được thiết kế để sử dụng với ngôn ngữ lập trình Python. Tùy thuộc vào trí tưởng tượng hoặc nhu cầu của nhà phát triển, loại trò chơi nào họ muốn phát triển bằng bộ công cụ này sẽ được quyết định. Trong bài viết này, chúng ta sẽ xem cách thiết kế trong PyGame với sự trợ giúp của các phím sao cho điểm đánh dấu thiết kế 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 có thể làm điều này bằng cách tạo một điểm (điểm đánh dấu) trên các tọa độ tương ứng, điểm này sẽ thay đổi khi sử dụng các phím.
Change in Co-ordinates of marker for respective keys pressed :
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
Dưới đây là cách thực hiện -
# import mô-đun pygame vào chương trình này
import pygame
# kích hoạt thư viện pygame.
# khởi tạo pygame và cho phép sử dụng các chức năng của pygame.
pygame.init()
# tạo đối tượng màn hình hiển thị
# với kích thước cụ thể (500, 500).
win = pygame.display.set_mode((500, 500))
# đặt tên cho cửa sổ pygame
pygame.display.set_caption("Moving rectangle") # "Hình chữ nhật di chuyển"
# tọa độ hiện tại của hình chữ nhật
x = 200
y = 200
# kích thước của hình chữ nhật
width = 10
height = 10
# vận tốc / tốc độ di chuyển
vel = 10
# biến xác định pygame đang chạy
run = True
# vòng lặp vô hạn
while run:
# tạo độ trễ thời gian 10 mili giây
pygame.time.delay(10)
# duyệt qua danh sách các đối tượng sự kiện
# được trả về bởi phương thức pygame.event.get()
for event in pygame.event.get():
# nếu kiểu sự kiện là QUIT (thoát)
# thì thoát khỏi pygame và chương trình
if event.type == pygame.QUIT:
# thoát khỏi vòng lặp while
run = False
# lưu trạng thái phím đang được nhấn
keys = pygame.key.get_pressed()
# nếu phím mũi tên trái được nhấn
if keys[pygame.K_LEFT] and x > 0:
# giảm tọa độ x
x -= vel
# nếu phím mũi tên phải được nhấn
if keys[pygame.K_RIGHT] and x < 500 - width:
# tăng tọa độ x
x += vel
# nếu phím mũi tên lên được nhấn
if keys[pygame.K_UP] and y > 0:
# giảm tọa độ y
y -= vel
# nếu phím mũi tên xuống được nhấn
if keys[pygame.K_DOWN] and y < 500 - height:
# tăng tọa độ y
y += vel
# vẽ hình chữ nhật (hình di chuyển) lên màn hình
pygame.draw.rect(win, (255, 0, 0), (x, y, width, height))
# cập nhật lại cửa sổ hiển thị
pygame.display.update()
# đóng cửa sổ pygame
pygame.quit()
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,....