Làm thế nào để bạn thêm một bước nhảy trong python?
Trong sự kiện lệnh trò chuyện, dịch chuyển người chơi đến vị trí cao hơn vị trí hiện tại Show
Bước 3. Sử dụng lệnh gạch chéo của bạnVào Minecraft gõ t để mở chat rồi nhập jump Bước 4. Thêm một tham số vào lệnh gạch chéoThêm một biến tham số vào lệnh trò chuyện. Sử dụng tên biến
Bước 5. Nhảy số lượng do người dùng nhậpThay vì một số
Bước 6. Sử dụng lệnh gạch chéo của bạnTruy cập Minecraft và nhập bước nhảy 50 trong cuộc trò chuyện. Bạn nên nhảy 50 khối thay vì 100. Hãy thử nhảy 1000… Trong bài viết này, bạn sẽ học cách triển khai logic nhảy và chạy trong Pygame. Để làm như vậy, chúng tôi sẽ triển khai logic trình phát Bạn có thể thích Di chuyển F = 1/2 * m * v^2 Trong đó F là lực lên/xuống, m là khối lượng của vật và v là vận tốc. Vận tốc giảm dần theo thời gian vì khi người chơi nhảy, vận tốc sẽ không tăng nhiều hơn trong mô phỏng này. Nếu người chơi chạm đất, bước nhảy kết thúc. Trong Python, chúng tôi đặt một biến isjump để cho biết người chơi có nhảy hay không. Nếu là người chơi thì vị trí của người đó sẽ được cập nhật theo công thức trên Mã đầy đủ from pygame.locals import * Nếu bạn muốn nhảy lên các đối tượng, chỉ cần thêm chúng vào màn hình, phát hiện va chạm và đặt lại các biến nhảy nếu va chạm là đúng Bạn có thể thích Tiếp theo Đăng trong trò chơi 2015-05-06
Đừng điền vào đây nếu bạn là con người. Tên Địa chỉ emailThông báo Gửi tin nhắn Thor • Thứ Sáu, ngày 29 tháng 5 năm 2015 Cảm ơn, đây là một nền tảng vững chắc để bắt đầu. ) John • Chủ nhật, ngày 09 tháng 8 năm 2015 Hướng dẫn rất hữu ích để hiểu lập trình pygame vật lý của bạn là một chút off. Lực, F = ma. Biểu thức 1/2 * m * v^2 là động năng không phải lực. Nhưng những gì bạn thực sự muốn làm là tính toán sự thay đổi trong tọa độ y thẳng đứng để gia tốc trọng trường không đổi trong khi nhảy. Sự thay đổi tọa độ y được cho bởi dy = v * dt, trong đó dt là bước thời gian không đổi. Vận tốc thẳng đứng, v, không giảm tuyến tính do gia tốc không đổi (vì v = at) như chương trình ví dụ của bạn. Nhưng thuật ngữ F phải tỷ lệ thuận với v chứ không phải v^2. Nếu bạn thay đổi (tự. v * tự. v) để (tự. v) bạn không cần if/else vì biểu thức tỷ lệ thuận với chính nó. v đổi dấu với tự. v. Khối lượng không ảnh hưởng đến vận tốc thẳng đứng (bỏ qua lực cản của không khí) vì tất cả các vật thể đều được gia tốc bởi lực hấp dẫn với cùng tốc độ Để giữ các thay đổi ở mức tối thiểu, tôi đã thay thế lệnh "if self. v>0" biểu thức cho F với một dòng. Thay đổi mã xử lý bước nhảy vật lý dẫn đến một bước nhảy parabol đẹp như trong vật lý thế giới thực. Vật lý bình phương vận tốc ban đầu tăng nhanh và lơ lửng ở đỉnh cung lâu hơn. Điều đó có thể là mong muốn đối với một số trò chơi, nhưng đó không phải là cách nhảy hoạt động trong thế giới thực |