pygame游戏之旅5:添加文字

来源:互联网 发布:gamesalad支持windows 编辑:程序博客网 时间:2024/05/17 06:11

在游戏中添加显示文字:

这里自己定义一个crash函数接口:

def crash():    message_diaplay('You Crashed')
然后实现接口函数message_display(text)

def message_diaplay(text):    largeText = pygame.font.Font('freesansbold.ttf',115)    TextSurf, TextRect = text_objects(text, largeText)    TextRect.center = ((display_width/2),(display_height/2))    gameDisplay.blit(TextSurf, TextRect)    pygame.display.update()    time.sleep(2)    game_loop()
在这其中定义了一个函数text_objects(text, largeText),最后实现这个函数即可

def text_objects(text, font):    textSurface = font.render(text, True, white)    return textSurface, textSurface.get_rect()


全部代码:
import pygameimport timepygame.init()white = (255,255,255)car_width = 100display_width = 800display_height = 600gameDisplay = pygame.display.set_mode( (display_width,display_height) )pygame.display.set_caption('A bit Racey')clock = pygame.time.Clock()carImg = pygame.image.load('car.png')def car(x, y):    gameDisplay.blit(carImg, (x,y))    def text_objects(text, font):    textSurface = font.render(text, True, white)    return textSurface, textSurface.get_rect()def message_diaplay(text):    largeText = pygame.font.Font('freesansbold.ttf',115)    TextSurf, TextRect = text_objects(text, largeText)    TextRect.center = ((display_width/2),(display_height/2))    gameDisplay.blit(TextSurf, TextRect)    pygame.display.update()    time.sleep(2)    game_loop()def crash():    message_diaplay('You Crashed')def game_loop():    x = display_width * 0.45    y = display_height * 0.8    x_change = 0    gameExit = False    while not gameExit:        for event in pygame.event.get():            if event.type == pygame.QUIT:                gameExit = True            if event.type == pygame.KEYDOWN:                if event.key == pygame.K_LEFT:                    x_change = -5                elif event.key == pygame.K_RIGHT:                    x_change = 5            if event.type == pygame.KEYUP:                if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:                    x_change = 0            print(event)        x += x_change        gameDisplay.fill(white)        car(x,y)        if x > display_width - car_width or x < 0:            gameExit = True        pygame.display.update()        clock.tick(60)crash()#game_loop()pygame.quit()quit()
结果图:





原创粉丝点击