Exemple #1
0
 def AddLocationAndItem(self, location: Location, item: Item) -> None:
     if item in [
             Item.MAP, Item.COMPASS, Item.KEY, Item.BOMBS, Item.FIVE_RUPEES,
             Item.NOTHING
     ]:
         return
     level_or_cave_num = location.GetLevelOrCaveNum()
     self.per_level_item_location_lists[level_or_cave_num].append(location)
     self.loc_counter += 1
     #TODO: This would be more elgant with a dict lookup
     if self.settings.progressive_items:
         if item == Item.RED_CANDLE:
             item = Item.BLUE_CANDLE
         elif item == Item.RED_RING:
             item = Item.BLUE_RING
         elif item == Item.SILVER_ARROWS:
             item = Item.WOOD_ARROWS
         elif item == Item.WHITE_SWORD:
             item = Item.WOOD_SWORD
         elif item == Item.MAGICAL_SWORD:
             item = Item.WOOD_SWORD
         elif item == Item.MAGICAL_BOOMERANG:
             item = Item.BOOMERANG
     if item == Item.TRIFORCE:
         print("Not adding Triforce")
     else:
         print("Adding item %s" % item)
         self.item_num_list.append(item)
         self.item_counter += 1
     num_locations = 0
     print("Num items/locations: %d/%d" %
           (self.item_counter, self.loc_counter))