5.6: The Main Game Loop
- Page ID
- 13587
while True: # main game loop slideTo = None # the direction, if any, a tile should slide msg = 'Click tile or press arrow keys to slide.' # contains the message to show in the upper left corner. if mainBoard == SOLVEDBOARD: msg = 'Solved!' drawBoard(mainBoard, msg)
In the main game loop, the slideTo
variable will track which direction the player wants to slide a tile (it starts off at the beginning of the game loop as None and is set later) and the msg variable tracks what string to display at the top of the window. The program does a quick check on line 4 [64] to see if the board data structure has the same value as the solved board data structure stored in SOLVEDBOARD
. If so, then the msg
variable is changed to the string 'Solved!'
.
This won’t appear on the screen until drawBoard()
has been called to draw it to the DISPLAYSURF
Surface object (which is done on line 7 [67]) and pygame.display.update()
is called to draw the display Surface object on the actual computer screen (which is done on line 291 at the end of the game loop).