def __init__(self): self.map = Map(START_LEVEL) # Enforce that a path does exist in the map while self.map.findPath() == None: self.map = Map(START_LEVEL) self.player = Player() self.inventory = Inventory() self.enemy_factory = EnemyFactory() self.user = User() self.invuln_turns = 0 self.swap_weapon_to = None self.current_enemy = None self.level = START_LEVEL self.danger = 5 self.hide_danger = 5 self.escape_chance = 3 self.items_dropped = 0 # a counter so we make sure they get shield, sword and bow chances first self.steps_left = MAX_STEPS self.escapes_remaining = NUM_ESCAPES self.encounter_sdorf = False self.dangers = [] self.escape_chances = [] self.hide_dangers = [] self.seerdata = SeerData() self.init_dangers()