2017-09-21 10 views
1

最近、Pygameで作成しているゲーム用のフォントをダウンロードしましたが、フォントが使用されているプロンプトがポップアップ表示されると、エラーが表示されます。 エラーが読み取りますPygame IOError、フォントファイルを読み取ることができません

Traceback (most recent call last): 
File "/home/pi/Desktop/Python Game.py", line 83, in <module> game_loop() 
File "/home/pi/Desktop/Python Game.py", line 78, in game_loop crash() 
File "/home/pi/Desktop/Python Game.py", line 29, in message_display largeText = pygame.font.Font 
("/home/pi/.fonts/ARCADECLASSIC.TTF",110) 
IOError: unable to read font file '/home/pi/.fonts/ARCADECLASSIC.TTF' 

私のコードが読み取ります

def car (x, y) 
gameDisplay.blit (carImg, (x, y)) 

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

def message_display (text): 
largeText = pygame.font.Font ("/Home/pi/.fonts/ARCADECLASSIC.TTF, 110) 
Textsurf, TextRect-text_objects (text, largeText) 
TextRect.center = ((display-width/2), (display-height/2)) 
gameDisplay.blit (TextSurf, TextRect) 

私はそれが壊れてhasntを意味し、他のウェブサイトから同じフォントをダウンロードしているように私は、起こっていただきましたことを確認していません。

Raspbian Wheezyを実行しているRaspberry Pi 2のIm。 (それが必要の場合)ここで はすべて私のコードです:

import pygame 
import time 

pygame.init() 

display_width=800 
display_height=600 

gameDisplay=pygame.display.set_mode((display_width,display_height)) 
pygame.display.set_caption("Road Obstacles!") 

black=(0,0,0) 
white=(255,255,255) 
red=(255,0,0) 

car_width=50 

clock=pygame.time.Clock() 
carImg = pygame.image.load("Racecar.png") 

def car(x,y): 
    gameDisplay.blit(carImg,(x,y)) 

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

def message_display(text): 
    largeText = pygame.font.Font("ARCADECLASSIC.TTF",110) 
    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_display("Woops! 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: 
        x_change += 5 
       if event.key == pygame.K_RIGHT: 
        x_change += -5 


     x += x_change 

     gameDisplay.fill(white) 
     car(x,y) 

     if x > display_width - car_width or x < 0: 
      crash() 

     pygame.display.update() 
     clock.tick(60) 

game_loop() 
pygame.quit() 
quit() 

私は私にpygameのについていくつかのことを教えるためにYoutubeでSentdexでチュートリアルを使用し、しかし、私は私が進行を停止させ、この道路のブロックをヒットしました私はこのゲームを単なるコピーではなくチュートリアルの拡張にしようとしています。

答えて

0

Windows上で正常に動作します。私はhttp://www.dafont.com/arcade-pizzadude.fontからランダムなアーケードフォントファイルをダウンロードしました。フォントファイルが破損している可能性があります。また注意すべきは、 "。"で始まるフォルダLinuxではデフォルトでは隠されていますが、ウィンドウでは隠されています。だからフォントファイルを別のフォルダに入れてこのコードを実行できますか?

+0

一度私は家に戻って、私は現在休日ですが、私はチップをありがとう! –

+0

はい!ありがとうございました! –

関連する問題