2013-04-06 63 views
0

我试图将一些代码从Javascript移植到Python,我甚至无法确定从哪里开始。我已经看了很多PyGame的教程,但没有一个似乎点击了我。所以,我希望能够在这里得到一个快速的例子,或者至少有一个正确的方向。如何在PyGame中绘制多个屏幕(仅在一个窗口中)?

我想要制作多个屏幕,我可以根据用户当时在做什么来回切换,甚至可以并排显示两个屏幕。目前,我得到的只是一些Javascript,它会在屏幕上绘制随机圆圈。 PyGame逻辑是我唯一遇到的问题。

Here's my javascript for reference.

回答

0

的Pygame是SDL的包装。 SDL使用曲面来表示位图或可以在屏幕上绘制的任何内容。用pygame.display.set_mode((w,h),0,d)你可以得到表面,或整个画布。然后,您可以绘制或blit其他曲面,然后调用flip()以显示更改。如果你希望有几个屏幕,你可以有一个当前的状态号码,并相应地屏幕。 例如:

if(current_state == MAIN_SCREEN): 
    drawAll(screen) 
else 
    drawEnemiesOnly(screen) 

,你可以用数字键改变屏幕:

for event in pygame.event.get(): 
     if event.type == KEY_DOWN: 
      if(event.key == K_1): 
       current_state = 1 
1

您可以为您要创建的每个子屏幕创建Subsurface

然后,您可以将每个对象看作是全屏/单个表面,但它们仍然会引用原始屏幕。

相关问题