예제 #1
0
 def level3(self):
     """
     Level 3
     :return: None
     """
     self.level = 3
     self.clear_grid()
     self.place_from_map(
         ("..........", ".########.", ".#.p....#.", ".#....k.#.",
          ".#....m.#.", ".#....l.#.", ".###d####.", ".#......#.",
          ".#....e.#.", ".########.", ".........."), {
              ".":
              'Empty',
              "#":
              'Wall',
              "p":
              'Player',
              "k":
              objects.SmallKey(color=Colors.YELLOW),
              "l":
              objects.SmallKey(color=Colors.SCARLET),
              "m":
              objects.SmallKey(color=Colors.NAVY),
              "d":
              objects.ChangingColoredDoor(
                  color_queue=(Colors.RED, Colors.AQUA, Colors.ORANGE,
                               Colors.MAGENTA, Colors.YELLOW, Colors.BLUE)),
              "e":
              objects.Exit(target_level="level4")
          })
예제 #2
0
 def level6(self):
     """
     Level 6
     :return: None
     """
     self.level = 6
     self.clear_grid()
     self.place_from_map(
         ("..........", ".########.", ".#p.c...#.", ".#.....k#.",
          ".####d###.", ".#......#.", ".#......#.", ".####D###.",
          ".#......#.", ".#.....e#.", ".########.", ".........."), {
              ".":
              'Empty',
              "#":
              'Wall',
              "p":
              objects.Player(),
              "k":
              objects.SmallKey(color=Colors.AQUA, hackable=[]),
              "d":
              objects.ColoredDoor(color=Colors.SCARLET, hackable=['color']),
              "D":
              objects.ColoredDoor(color=Colors.AQUA,
                                  required_key_name="big_key",
                                  hackable=['required_key_name']),
              "e":
              objects.Exit(target_level="level6"),
              "c":
              objects.Computer(),
          })
예제 #3
0
 def level4(self):
     """
     Level 4
     :return: None
     """
     self.level = 4
     self.clear_grid()
     self.place_from_map(
         ("....................", ".##################.",
          ".#.............x.e#.", ".#.p...........#..#.",
          ".#.............####.", ".#...########.....#.",
          ".#...D......#.....#.", ".#.#######..#.....#.",
          ".#.#.....#..#.....#.", ".#.#..#..#..#.....#.",
          ".#.#..#..#..#.....#.", ".#.#..#..#..#.....#.",
          ".#.#..#.....#.....#.", ".#.#..#######.....#.",
          ".###..#...........#.", ".#.#..#############.",
          ".#.#...........d..#.", ".#.#..............#.",
          ".##################.", "...................."), {
              ".":
              "Empty",
              "#":
              "Wall",
              "p":
              "Player",
              "x":
              objects.ColoredDoor(color=Colors.ORANGE),
              "e":
              objects.Exit(target_level="level5"),
              "d":
              objects.AllyDrone(
                  inventory=[objects.SmallKey(color=Colors.ORANGE)]),
              "D":
              objects.ColoredDoor(color=Colors.ORANGE)
          })
예제 #4
0
 def level2(self):
     """
     Level 2
     :return: None
     """
     self.level = 2
     self.clear_grid()
     self.place_from_map(
         ("..........", ".########.", ".#.p....#.", ".#....k.#.",
          ".#....m.#.", ".#....l.#.", ".###d####.", ".#......#.",
          ".#....e.#.", ".########.", ".........."), {
              ".": 'Empty',
              "#": 'Wall',
              "p": 'Player',
              "k": objects.SmallKey(color=(255, 0, 0)),
              "l": objects.SmallKey(color=(0, 255, 0)),
              "m": objects.SmallKey(color=(0, 0, 255)),
              "d": objects.ColoredDoor(color=(0, 0, 255)),
              "e": objects.Exit(target_level="level3")
          })
예제 #5
0
 def level5(self):
     """
     Level 5
     :return: None
     """
     self.level = 5
     self.clear_grid()
     self.place_from_map(
         ("..........", ".########.", ".#p.c...#.", ".#.....k#.",
          ".####d###.", ".#......#.", ".#.....e#.", ".########.",
          ".........."), {
              ".": 'Empty',
              "#": 'Wall',
              "p": objects.Player(),
              "k": objects.SmallKey(color=Colors.AQUA, hackable=['color']),
              "d": objects.ColoredDoor(color=Colors.GREEN),
              "e": objects.Exit(target_level="level6"),
              "c": objects.Computer()
          })
예제 #6
0
 def level1(self):
     """
     Level 1
     :return: None
     """
     self.level = 1
     self.clear_grid()
     self.disable_console()
     self.place_from_map(
         ("..........", ".########.", ".#p.....#.", ".#.....k#.",
          ".####d###.", ".#......#.", ".#.....e#.", ".########.",
          ".........."), {
              ".": 'Empty',
              "#": 'Wall',
              "p": objects.Player(),
              "k": objects.SmallKey(),
              "d": objects.KeyDoor(key_name="small_key"),
              "e": objects.Exit(target_level="level2")
          })