这里是我如何实现我的简单pygames现在:这个基本的pygame结构如何?
import pygame, sys
from pygame.locals import *
def run_game():
pygame.init()
SIZE = (640, 400)
BG_COLOUR = (0, 0, 0)
LINE_COLOUR = (255, 255, 255)
screen = pygame.display.set_mode(SIZE)
clock = pygame.time.Clock()
while True:
time_passed = clock.tick(30)
for event in pygame.event.get():
if event.type == QUIT:
exit_game()
screen.fill(BG_COLOUR)
pygame.draw.aaline(screen, LINE_COLOUR, (1, 1), (639, 399))
pygame.display.flip()
def exit_game():
sys.exit()
if __name__ == "__main__"
run_game()
我还看到一个keeprunning
标志被用来退出主事件循环代替,以及使用pygame.event.poll()
而不是通过pygame.event.get()
循环。任何建议,如变量的情况/命名,任何使其更有效或可读的建议?
>“我建议避免... import *:”。 'pygame.locals'正是为这种用法而存在的。它包含许多常用的常量,主要是键码和事件类型。 – SingleNegationElimination 2009-09-12 03:28:06
标签/空间4/8混合是一个意外。我使用制表符,而不是空格,因为在jEdit中有空格,我必须退格4次才能进入缩进级别,而且只能使用制表符。不过,我可以随时将它们全部转换为空格。 – mk12 2009-09-12 04:19:40
而字典里的东西,并不是所有的情况下都只有一个声明是一个方法调用,那么这些如何工作呢?我不确定导入部分,为什么他们在文档中说:“作为一种方便,pygame中的大多数顶级变量都放在名为'pygame.locals'的模块中。这应该是与'from pygame.locals import *'一起使用,除了'import pygame'。“ ?感谢您花时间回答,我会再次审视您的意见。 – mk12 2009-09-12 04:25:45