Vòng lặp trò chơi Python

- Trọng tâm của nhiều trò chơi là vòng lặp trò chơi. Đây là nơi các hoạt động thiết yếu của trò chơi, chẳng hạn như cập nhật vị trí của các đối tượng trò chơi và kiểm tra va chạm diễn ra liên tục cho đến khi trò chơi kết thúc. Vòng lặp trò chơi cho trò chơi con rắn cần đạt được những điều sau. Chúng ta cần xóa con rắn hiện có khỏi màn hình. Chúng ta cần vẽ con rắn ở vị trí mới của nó, kiểm tra va chạm, với tường, bản thân hoặc thức ăn và xử lý chúng một cách thích hợp đồng thời cũng cập nhật điểm số cho đến nay. Hoạt hình con rắn của chúng tôi đã được xử lý bởi chức năng di chuyển con rắn. Vòng lặp trò chơi cũng cần phải làm như vậy, nhưng nó cũng có thêm trách nhiệm. Vì vậy, chúng tôi sẽ đổi tên con nai sừng tấm thành vòng lặp trò chơi và thêm một số chức năng mới. Được chứ. Vì vậy, bây giờ chúng tôi đã đổi tên nó thành phát hiện va chạm, chúng tôi muốn kiểm tra xem con rắn đã va chạm với một trong bốn bức tường, trên cùng dưới cùng bên trái hay bên phải. Cho dù nó va chạm với chính nó và sau đó…

Tải xuống các khóa học và học mọi lúc, mọi nơi

Xem các khóa học trên thiết bị di động của bạn mà không cần kết nối internet. Tải xuống các khóa học bằng ứng dụng LinkedIn Learning trên iOS hoặc Android của bạn

\[ \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \] \[ \newcommand{\vecd}[1]{\overset{-\. -\. \rightharpoonup}{\vphantom{a}\smash {#1}}} \]\[\newcommand{\id}{\mathrm{id}}\] \[ \newcommand{\Span}{\mathrm{span} . #1 \. }\] \[ \newcommand{\inner}[2]{\langle #1, #2 \rangle}\] \[ \newcommand{\Span}{\mathrm{span}}\] \[\newcommand{\ . #1 \. }\] \[ \newcommand{\inner}[2]{\langle #1, #2 \rangle}\] \[ \newcommand{\Span}{\mathrm{span}}\]\[\newcommand{\ . 8,0]{x212B}}\]

không có tiêu đề
import pygame, sys
from pygame.locals import *

pygame.init[]
DISPLAYSURF = pygame.display.set_mode[[400, 300]]
pygame.display.set_caption['Hello World!']
while True: # main game loop
    for event in pygame.event.get[]:
        if event.type == QUIT:
            pygame.quit[]
            sys.exit[]
    pygame.display.update[]

Dòng 7 là một vòng lặp while có điều kiện đơn giản là giá trị True. Điều này có nghĩa là nó không bao giờ thoát do điều kiện của nó được đánh giá là False. Cách duy nhất để thực thi chương trình thoát khỏi vòng lặp là nếu một câu lệnh break được thực thi [di chuyển thực thi đến dòng đầu tiên sau vòng lặp] hoặc sys.exit[] [kết thúc chương trình]. Nếu một vòng lặp như thế này nằm bên trong một hàm, thì một câu lệnh return cũng sẽ chuyển phần thực thi ra khỏi vòng lặp [cả hàm nữa]

Tất cả các trò chơi trong cuốn sách này đều có 7 vòng lặp while True này cùng với nhận xét gọi đó là "vòng lặp trò chơi chính". Vòng lặp trò chơi [còn gọi là vòng lặp chính] là vòng lặp trong đó mã thực hiện ba việc

  1. Xử lý các sự kiện
  2. Cập nhật trạng thái trò chơi
  3. Vẽ trạng thái trò chơi lên màn hình

Trạng thái trò chơi chỉ đơn giản là một cách đề cập đến một tập hợp các giá trị cho tất cả các biến trong chương trình trò chơi. Trong nhiều trò chơi, trạng thái trò chơi bao gồm các giá trị trong các biến số theo dõi sức khỏe và vị trí của người chơi, sức khỏe và vị trí của bất kỳ kẻ thù nào, dấu hiệu nào đã được thực hiện trên bàn cờ, điểm số hoặc lượt của ai. Bất cứ khi nào có điều gì đó xảy ra như người chơi bị sát thương [làm giảm giá trị sức khỏe của họ], hoặc kẻ thù di chuyển đi đâu đó hoặc điều gì đó xảy ra trong thế giới trò chơi, chúng tôi nói rằng trạng thái trò chơi đã thay đổi

Nếu bạn đã từng chơi một trò chơi cho phép bạn lưu, thì "trạng thái lưu" là trạng thái trò chơi tại thời điểm bạn đã lưu trò chơi đó. Trong hầu hết các trò chơi, việc tạm dừng trò chơi sẽ ngăn không cho thay đổi trạng thái trò chơi

Vì trạng thái trò chơi thường được cập nhật theo các sự kiện [chẳng hạn như nhấp chuột hoặc nhấn bàn phím] hoặc theo thời gian, nên vòng lặp trò chơi liên tục kiểm tra và kiểm tra lại nhiều lần trong một giây để tìm bất kỳ sự kiện mới nào đã xảy ra. Bên trong vòng lặp chính là mã xem xét những sự kiện nào đã được tạo [với Pygame, điều này được thực hiện bằng cách gọi hàm pygame.event.get[]]. Vòng lặp chính cũng có mã cập nhật trạng thái trò chơi dựa trên các sự kiện đã được tạo. Điều này thường được gọi là xử lý sự kiện

3. 4. Vòng lặp trò chơi và Trạng thái trò chơi được chia sẻ theo CC BY-NC-SA 3. 0 và do LibreTexts soạn thảo, phối lại và/hoặc quản lý

Vòng lặp trò chơi được sử dụng để làm gì?

Vòng lặp trò chơi chạy liên tục trong khi chơi trò chơi. Mỗi lượt của vòng lặp, nó xử lý đầu vào của người dùng mà không bị chặn, cập nhật trạng thái trò chơi và hiển thị trò chơi. Nó theo dõi thời gian trôi qua để kiểm soát tốc độ chơi trò chơi . Mẫu này tách rời tiến trình thời gian trò chơi khỏi đầu vào của người dùng và tốc độ xử lý.

Vòng lặp cốt lõi của trò chơi là gì?

Vòng lặp cốt lõi về cơ bản là nhịp tim của trò chơi của bạn. Đó là một chuỗi hoặc một chuỗi các hành động được lặp đi lặp lại như là dòng trải nghiệm chính của người chơi . Đó là bản chất cốt lõi của lý do tại sao chúng tôi quay lại chơi trò chơi nhiều lần.

3 vòng lặp trong Python là gì?

Ba loại câu lệnh điều khiển vòng lặp là. .
tuyên bố phá vỡ
tiếp tục tuyên bố
vượt qua tuyên bố

Bạn có thể viết mã một trò chơi đầy đủ bằng Python không?

Bạn có thể viết toàn bộ trò chơi bằng Python bằng PyGame . Xem danh sách các PythonGameLibraries khác được duy trì trong Wiki này hoặc danh sách này được duy trì trên DevMaster. bọc lưới. Bạn có thể tìm thấy hướng dẫn đầy đủ trong cuốn sách miễn phí "Tạo trò chơi với Python & Pygame".

Chủ Đề