1
我對pygame腳本世界比較陌生,在編寫遊戲時需要幫助:它將成爲玩家從起點移動到達終點的迷宮。移動.png離開屏幕
我決定從基礎開始,創建一個窗口,其中字符(.png文件)在按下數字鍵盤鍵時移動。
問題是,當我的.png到達屏幕時,它會移動。 如何防止它脫離屏幕? (PS:我想,如果可能的話,我不需要上課的解決方案,我絕對討厭這些,我也不喜歡他們)
下面是我寫的代碼到目前爲止:
進口librairies/importating庫
import pygame
from pygame.locals import *
pygame.init()
pygame.time.Clock().tick(30)
F1=pygame.display.set_mode((640, 480), RESIZABLE) # création fenêtre/creating main window
bg=pygame.image.load("background.jpg").convert() # chargement et conversion de l'image/loading and converting picture
F1.blit(bg, (0,0)) #collage de l'image de fond/sticking background
pygame.display.flip() # raffraichissement écran/refreshing screen
perso=pygame.image.load("perso.png").convert_alpha()
F1.blit(perso, (0,0))
pygame.display.flip()
F1_rect=F1.get_rect()
position=perso.get_rect()
F1.blit(perso, position)
pygame.display.set_caption("Deadalus V 0.0.0.1")
continuer = 1 # création d'une boucle infinie/creating main loop
pygame.key.set_repeat(1,1)
while continuer:
for event in pygame.event.get():
if event.type == QUIT:
continuer = 0
if event.type == KEYDOWN:
if event.key == K_KP2:
position = position.move(0,3)
if event.key == K_KP5:
position = position.move(0,-3)
if event.key == K_KP1:
position = position.move(-3,0)
if event.key == K_KP3:
position = position.move(3,0)
F1.blit(bg, (0,0))
F1.blit(perso, position)
pygame.display.flip()
您需要一些條件來檢查玩家位置的表示和遊戲區域的邊界。我認爲遲早你會需要類來幫助抽象(除非,*也許*,你是一個函數式編程專家。)類將會很方便學習 - 你需要最終對它們感到滿意。 – BlackVegetable
感謝您的回答。你知道在哪裏可以找到一個關於如何使用類的完整教程嗎? – MaxFR68
這幾乎是標準教程,雖然我確信Google搜索會給你更多:http://docs.python.org/2/tutorial/classes.html – BlackVegetable