Advertisement
Guest User

Untitled

a guest
Dec 10th, 2016
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.64 KB | None | 0 0
  1. # Määrittää luokan Map
  2. class Map(object):
  3.     # Määrittää sanakirjan scenes
  4.     scenes = {
  5.         "central_corridor": CentralCorridor(),
  6.         "laser_weapon_armory": LaserWeaponArmory(),
  7.         "the_bridge": TheBridge(),
  8.         "escape_pod": EscapePod(),
  9.         "death": Death(),
  10.         "finished": Finished(),
  11.     }
  12.    
  13.    
  14.     # määrittää initin, joka ottaa self ja start_scene argumentit.
  15.     def __init__(self, start_scene):
  16.         # määrittää muuttujan self.start_scene arvoksi start_scene argumentin.
  17.         self.start_scene = start_scene
  18.    
  19.    
  20.     # määrittää funktion next_scene joka ottaa argumentit self ja scene_name.
  21.     def next_scene(self, scene_name):
  22.         # määrittää muuttujan val arvoksi Map.scenes dictionaryn,
  23.         # jolle on kutsuttu funktio get parametrillä scene_name.
  24.         val = Map.scenes.get(scene_name)
  25.         # määrittää funktion arvoksi muuttujan val.
  26.         return val
  27.    
  28.     # määrittää funktion opening_scene, joka ottaa argumentin self.
  29.     def opening_scene(self):
  30.         # määrittää funktion arvoksi muuttujan self, jolle on kutsuttu next_scene funktio parametrilä self.start_scene
  31.         return self.next_scene(self.start_scene)
  32.    
  33.    
  34. # määrittää luokan Engine.
  35. class Engine(object):
  36.     # määrittää initin, joka ottaa self ja scene_map argumentit.
  37.     def __init__(self, scene_map):
  38.         # määrittää self.scene_map muuttujan arvoksi scene_map argumentin.
  39.         self.scene_map = scene_map
  40.    
  41.     # määrittää funktion play, joka ottaa argumentin self.
  42.     def play(self):
  43.         # määrittää muuttujan curren_scene arvoksi self.scene_map muuttujan, jolle on kutsuttu funktio opening_scene.
  44.         current_scene = self.scene_map.opening_scene()
  45.         # määrittää muuttujan last_scene arvoks self.scene_map muuttujan, jolle on kutsuttu funktio next_scene parametrillä 'finished'.
  46.         last_scene = self.scene_map.next_scene('finished')
  47.        
  48.         # määrittää loopin, joka pyörii niin kauan kun curren_scene ja last_scene muuttujilla on eri arvot.
  49.         while current_scene != last_scene:
  50.             # määrittää muuttujan next_scene_name arvoksi muuttujan current_scene jolle on kutsuttu enter funktio.
  51.             next_scene_name = current_scene.enter()
  52.             # määrittää muuttujan current_scene arvoksi self.scene_map muuttujan jolle on kutsuttu funktio next_scene parametrillä next_scene_name.
  53.             current_scene = self.scene_map.next_scene(next_scene_name)
  54.        
  55.         # kutsuu muuttujalle current_scene funktion enter.    
  56.         current_scene.enter()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement