2013-04-06 2 views
0

J'essaie de transférer du code de Javascript vers Python, et je n'arrive même pas à savoir par où commencer. J'ai regardé une bonne douzaine de tutoriels pour PyGame, mais aucun d'entre eux semble cliquer pour moi. Donc, j'espérais obtenir un exemple rapide ici, ou au moins un point dans la bonne direction. Je veux faire un certain nombre d'écrans que je peux basculer entre, selon ce que fait l'utilisateur à ce moment-là, et même afficher deux côte à côte. Pour l'instant, tout ce que j'ai c'est un Javascript qui dessine des cercles aléatoires sur l'écran. La logique PyGame est la seule chose avec laquelle j'ai des problèmes.Comment dessineriez-vous plusieurs écrans dans PyGame (dans une seule fenêtre)?

Here's my javascript for reference.

Répondre

0

Pygame est un wrapper pour SDL. SDL utilise une surface pour représenter un bitmap ou tout ce qui peut être dessiné à l'écran. Avec le pygame.display.set_mode((w,h),0,d) vous pouvez obtenir la surface, ou la toile entière. Vous pouvez ensuite dessiner ou masquer les autres surfaces, puis appeler le flip() pour afficher les modifications. Si vous souhaitez avoir quelques écrans, vous pouvez avoir un numéro d'état en cours et faire clignoter les écrans en conséquence. Par exemple:

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

vous pouvez changer les écrans avec les touches numériques:

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

Vous pouvez créer un Subsurface pour chaque sous-écran que vous voulez créer.

Ensuite, vous pouvez traiter chacun comme s'il s'agissait d'un écran plein/surface unique, mais ils font toujours référence à l'écran d'origine.

Questions connexes