私は現在、(今のところ)スコアが毎秒1ポイント増加するゲームを作成しています。
ただし、現在のコード (変数は毎秒変更されると思います) では、プログラムを実行するたびにテキストは変更されません。0のままです。
ここに私のコードがあります: (私はコメントのように私のコードを説明するためにこの質問にテキストを提供しました.)
セクション 1: PyGame およびその他の標準的な手順コードのインポート。
import sys, pygame
from pygame.locals import *
pygame.init()
size = width, height = 800,500
screen = pygame.display.set_mode(size)
セクション 2: ウィンドウのキャプションと色変数の設定。
pygame.display.set_caption("One Score (Created by - Not Really Working Lamp Productions:)")
WHITE = (255,255,255)
セクション 3: 変数「score」の宣言。この問題に大きく関係しているため、別のコード サンプルを用意しました。
score = 0
セクション 4: 画面を塗りつぶし、デフォルトのフォント変数を宣言します。
screen.fill (WHITE)
myfont = pygame.font.SysFont("monospace", 16)
セクション 5: 免責事項のテキスト (または、クレームのテキストかどうかはよくわかりません。)
disclaimertext = myfont.render("Copyright, 2013, Not Really Working Lamp Productions.", 1, (0,0,0))
screen.blit(disclaimertext, (5, 480))
セクション 6: 楽譜テキストの追加 (おそらく最も重要な部分)
scoretext = myfont.render("Score = "+str(score), 1, (0,0,0))
screen.blit(scoretext, (5, 10))
セクション 7: while ループ (おそらく最も重要な部分)
while 1:
for event in pygame.event.get():
pygame.display.flip()
if event.type == pygame.QUIT:sys.exit()
pygame.time.wait(100)
score = score + 1
では、コードのどこに何を入れればよいのでしょうか? (「while 1:」ループから毎秒変化するため、スコアを常に更新する画面が必要です。)
ありがとうございました。