10UMLClass30260300120Controller
bg=red
-
-
get_and_handle_events()
exit_if_time_to_quit(events)
key_was_pressed_on_this_cycle(key, events) -> bool
UMLPackage32010360170main
--
bg=orange
halign=left
1. Initializes pygame, a screen, and a Clock (for the frame rate).
Implements a Model-View-Controller (MVC) architecture:
1. Constructs the Game, View and Controller.
2. Enters the game loop, which repeatedly (per frame rate):
-- Asks the Controller object to get and respond to events.
-- Asks the Game object to run one cycle.
-- Asks the View object to draw everything.UMLClass77010190120View
bg=red
-
-
draw_everything()
-- Draws the background.
-- Asks the Game to ask its
objects to draw themselves.UMLClass390230380150Game
bg=red
-
-
run_one_cycle()
-- Called to do whatever actions need to happen (independently
of events / user-input) during this cycle of the game loop.
draw_game()
-- Asks the Game objects to draw themselves.
UMLPackage83017023080screen
--
bg=yellow
The pygame.Surface object returned
by pygame.display.set_mode().Relation41017014080lt=<-
constructs
m1=1
110;60;110;40;10;40;10;10Relation230170160110lt=<-
constructs
m1=110;90;10;50;120;50;140;10Relation6705012050lt=<-
constructs
m1=1100;20;10;20Relation9301204090lt=<-12;70;10;13Relation56017029060lt=<-
m2=constructs
m1=1
m2pos=10,-12
270;30;10;30;10;10Relation72012090130lt=<-10;110;70;13UMLNote201024060Model-View-Controller
(MVC) architecture.
PUT THE NAME OF YOUR GAME HERE.
bg=blueRelation7602209050lt=<-
m2=1
m2pos=10,0
70;20;10;20Relation3202909060lt=<-
m1=1
70;23;10;23