Ejemplo n.º 1
0
    def stats_header(cls, m: "MonsterModel", previous_evolutions,
                     query_settings: QuerySettings):
        voice_emoji = get_awakening_emoji(
            63) if m.awakening_count(63) and not m.is_equip else ''

        multiboost_emoji = None
        if m.awakening_count(
                30) and query_settings.cardmode == CardModeModifier.coop:
            multiboost_emoji = get_emoji('misc_multiboost')

        plus_emoji = get_emoji('plus_297')
        if cls.get_plus_status(previous_evolutions,
                               query_settings.cardplus) != 297:
            plus_emoji = get_emoji('plus_0')

        lb_emoji = get_emoji('lv110')
        if m.limit_mult > 0 and query_settings.cardlevel == CardLevelModifier.lv120:
            lb_emoji = get_emoji('lv120')

        header = Box(Text(voice_emoji),
                     Text(plus_emoji),
                     Text(multiboost_emoji) if multiboost_emoji else None,
                     Text('Stats'),
                     Text('({}, +{}%)'.format(lb_emoji, m.limit_mult))
                     if m.limit_mult else None,
                     delimiter=' ')
        return header
Ejemplo n.º 2
0
 def get_awakenings_feedback_text(self) -> str:
     awakes = []
     feedback = []
     guess_awo_count = len(self.guess_monster.awakenings
                           ) - self.guess_monster.superawakening_count
     for index, guess_awake in enumerate(
             self.guess_monster.awakenings[:guess_awo_count]):
         awakes.append(
             get_awakening_emoji(guess_awake.awoken_skill_id,
                                 guess_awake.name))
         val = self.awakenings_diff[index]
         if val == 0:
             feedback.append(get_emoji('red_cross_custom'))
         elif val == 0.5:
             feedback.append(get_emoji('yellow_square_custom'))
         else:
             feedback.append(get_emoji('green_check_custom'))
     return "\n".join(["".join(awakes), "".join(feedback)])
Ejemplo n.º 3
0
def get_awoken_skill_description(awoken_skill: "AwokenSkillModel",
                                 show_help: bool = False,
                                 token_map: dict = None):
    if token_map is None:
        token_map = {}
    emoji_text = get_awakening_emoji(awoken_skill.awoken_skill_id,
                                     awoken_skill.name)
    if not show_help:
        desc = awoken_skill.desc_en
    else:
        if awoken_skill.awoken_skill_id not in token_map:
            desc = "No modifiers found. Please contact Tsubaki admins for support."
        else:
            tokens = token_map[awoken_skill.awoken_skill_id]
            tokens: set
            desc = ', '.join('`{}`'.format(token) for token in list(tokens))
    return Box(Text(emoji_text),
               BoldText(awoken_skill.name_en),
               Text(desc),
               delimiter=' ')
Ejemplo n.º 4
0
def _get_repeated_desc(prev_index: int, awakening: "AwakeningModel"):
    emoji_text = get_awakening_emoji(awakening.awoken_skill_id, awakening.name)
    return Box(Text(emoji_text),
               Text('[Same as {} awakening]'.format(
                   ORDINAL_WORDS[prev_index])),
               delimiter=' ')
Ejemplo n.º 5
0
def _get_awakening_text(awakening: "AwakeningModel"):
    return get_awakening_emoji(awakening.awoken_skill_id, awakening.name)
Ejemplo n.º 6
0
def _get_awakening_emoji_for_stats(m: "MonsterModel", i: int):
    return get_awakening_emoji(
        i) if m.awakening_count(i) and not m.is_equip else ''