编码Pygame RPG时出错

时间:2017-10-21 18:01:45

标签: pygame

我遇到以下代码的问题:



import pygame, sys, time
from scripts.UltraColor import *

pygame.init()

cSec = 0
cFrame = 0
FPS = 0

fps_font = pygame.font.Font("C:\\Windows\\Fonts\\Verdana.ttf", 20)


def show_fps():
    fps_overlay = fps_font.render(str(FPS), True, color.Goldenrod)
    window.blit(fps_overlay, (0, 0))


def create_window():
    global window, window_height, window_width, window_title
    window_width, window_height = 1280, 720
    window_title = "The Adventure of Nate"
    pygame.display.set_caption(window_title)
    window = pygame.display.set_mode((window_width, window_height, pygame.HWSURFACE | pygame.DOUBLEBUF))


def count_fps():
    global cSec, cFrame, FPS

    if cSec == time.strftime("%S"):
        cFrame += 1

    else:
        FPS = cFrame
        cFrame = 0
        cSec = time.strftime("%S")


create_window()

isrunning = True

while isrunning == True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            isrunning = False

    # LOGIC

    count_fps()

    # Rendering Graphics

    window.fill(color.Black)

    show_fps()

    pygame.display.update()

pygame.quit()
sys.exit()




此代码返回以下错误:

C:\ Python3.6 \ python.exe" C:/ Users / home / PycharmProjects / Basic RPG / Base Game.py" Traceback(最近一次调用最后一次):   File" C:/ Users / home / PycharmProjects / Basic RPG / Base Game.py",第38行,in     create_window()   文件" C:/ Users / home / PycharmProjects / Basic RPG / Base Game.py",第23行,在create_window中     window = pygame.display.set_mode((window_width,window_height,pygame.HWSURFACE | pygame.DOUBLEBUF)) TypeError:参数1必须是长度为2的序列,而不是3

使用退出代码1完成处理

如果有人知道如何更正此代码,请回复。

1 个答案:

答案 0 :(得分:0)

正如您在the documentation中所看到的,set_mode函数采用元组(width, height)和其他参数。你正在传递一个元组。正确的代码应如下所示(注意括号):

window = pygame.display.set_mode((window_width, window_height), pygame.HWSURFACE | pygame.DOUBLEBUF)