Ejemplo n.º 1
0
 def description(self):
     if self.type == 68:
         return Describe.skyfall(self.attributes, self.chance,
                                 self.min_turns, self.max_turns)
     elif self.type == 96:
         return Describe.skyfall(self.attributes, self.chance,
                                 self.min_turns, self.max_turns, True)
Ejemplo n.º 2
0
    def description(self):
        desc = Describe.condition(
            max(self._ai, self._rnd), self.hp_threshold,
            self.one_time is not None or self.forced_one_time is not None)
        # TODO: figure out if this is still needed
        if self.enemies_remaining:
            desc = desc + ', ' if desc else ''
            enemies = 1 if self.enemies_remaining > 10 else self.enemies_remaining
            desc += 'when <= {} enemies remain'.format(enemies)
        if self.on_death:
            desc = desc + ', ' if desc else ''
            desc += 'on death'
            desc = desc.capitalize()

        if self.condition_attributes:
            if desc:
                desc += " & " + Describe.attribute_exists(
                    self.condition_attributes)
            else:
                desc = Describe.attribute_exists(
                    self.condition_attributes).capitalize()

            # TODO: tieout
            # desc = desc.capitalize()

        return desc
Ejemplo n.º 3
0
 def __init__(self, skill: EnemySkill, position_type):
     self.desc_arr = []
     pos = []
     att = []
     for i in self.RANGE_MAP[skill.type]:
         if skill.params[i] and skill.params[i + 1]:
             p = position_bitmap(skill.params[i])
             a = attribute_bitmap(skill.params[i + 1])
             self.desc_arr.append(
                 Describe.row_col_spawn(position_type, p, a)[7:])
             pos += p
             att += a
     super().__init__(skill,
                      position_type=position_type,
                      positions=pos,
                      attributes=att)
     self.attack = ESAttack.new_instance(
         self.params[7]) if skill.type in [77, 79] else None
Ejemplo n.º 4
0
 def description(self):
     source = 'damage >= {}'.format(self.absorb_threshold)
     return Describe.absorb(source, self.turns)
Ejemplo n.º 5
0
 def description(self):
     source = 'combo <= {:,d}'.format(self.combo_threshold)
     return Describe.absorb(source, self.min_turns, self.max_turns)
Ejemplo n.º 6
0
 def description(self):
     target_type = '{:s} cards'.format(typing_to_str([self.target_typing]))
     return Describe.bind(self.min_turns,
                          self.max_turns,
                          target_type=target_type)
Ejemplo n.º 7
0
 def description(self):
     spawn_type = [-9] if self.locked else [9]
     if self.whole_board:
         return Describe.board_change(spawn_type)
     else:
         return Describe.fixed_orb_spawn(spawn_type)
Ejemplo n.º 8
0
 def conditions(self):
     return Describe.attribute_exists(self.condition_attributes)
Ejemplo n.º 9
0
 def description(self):
     return Describe.bind(self.turns, None, None, 'awoken skills')
Ejemplo n.º 10
0
 def description(self):
     return Describe.damage_reduction('all sources', turns=self.turns)
Ejemplo n.º 11
0
 def description(self):
     return Describe.enrage(self.multiplier, self.turns)
Ejemplo n.º 12
0
 def description(self):
     return Describe.recover(self.min_amount, self.max_amount, self.target)
Ejemplo n.º 13
0
 def description(self):
     return Describe.status_shield(self.turns)
Ejemplo n.º 14
0
 def description(self):
     return Describe.blind_sticky_fixed(self.turns)
Ejemplo n.º 15
0
 def description(self):
     return Describe.blind_sticky_random(self.turns, self.min_count,
                                         self.max_count)
Ejemplo n.º 16
0
 def description(self):
     return Describe.blind()
Ejemplo n.º 17
0
 def description(self):
     return Describe.orb_change(self.orb_from,
                                self.orb_to,
                                random_count=self.random_count)
Ejemplo n.º 18
0
 def description(self):
     return Describe.void(self.void_threshold, self.turns)
Ejemplo n.º 19
0
 def description(self):
     return Describe.damage_reduction('all sources', self.shield_percent,
                                      self.turns)
Ejemplo n.º 20
0
 def description(self):
     return Describe.leadswap(self.turns)
Ejemplo n.º 21
0
 def description(self):
     return Describe.debuff(self.debuff_type, self.amount, self.unit,
                            self.turns)
Ejemplo n.º 22
0
 def description(self):
     return Describe.bind(self.min_turns,
                          self.max_turns,
                          target_type='active skills')
Ejemplo n.º 23
0
 def description(self):
     return Describe.row_col_spawn(self.position_type,
                                   position_bitmap(self.params[1]),
                                   attribute_bitmap(self.params[2]))
Ejemplo n.º 24
0
 def description(self):
     return Describe.end_battle()
Ejemplo n.º 25
0
 def description(self):
     return Describe.random_orb_spawn(self.count, self.attributes)
Ejemplo n.º 26
0
 def description(self):
     return Describe.change_attribute(self.attributes)
Ejemplo n.º 27
0
 def description(self):
     spawn_type = [-9] if self.locked else [9]
     return Describe.random_orb_spawn(self.count, spawn_type)
Ejemplo n.º 28
0
 def description(self):
     return Describe.gravity(self.percent)
Ejemplo n.º 29
0
 def description(self):
     return Describe.board_change(self.attributes)
Ejemplo n.º 30
0
 def description(self):
     source = attributes_to_str(self.attributes)
     return Describe.absorb(source, self.min_turns, self.max_turns)