def text(self, converter: ASTextConverter) -> str:
     return converter.enhance_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.self_att_nuke_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.poison_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.match_disable_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.skyfall_lock(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.unlock_board_path_toragon(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.suicide_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.extra_combo_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.true_gravity_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.change_enemies_attribute_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.random_orb_change_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.heal_active_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.attack_attr_x_team_atk_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.spawn_orb_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.no_skyfall_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.unlock_all_orbs(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.multi_hit_laser_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.absorb_mechanic_void_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.void_mechanic_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.fixed_pos_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.fixed_attr_nuke_convert(self)
    def __init__(self, jp_database: Database, na_database: Database,
                 kr_database: Database):
        self.all_cards = build_cross_server_cards(
            jp_database, na_database,
            kr_database)  # type: List[CrossServerCard]
        self.ownable_cards = list(
            filter(lambda c: 0 < c.monster_id < 19999,
                   self.all_cards))  # type: List[CrossServerCard]

        self.leader_skills = build_cross_server_skills(
            jp_database.leader_skills, na_database.leader_skills,
            kr_database.leader_skills)

        ls_converter = EnLSTextConverter()
        for ls in self.leader_skills:
            ls.en_text = ls.jp_skill.full_text(ls_converter)
            ls.skill_type_tags = list(
                skill_text_typing.parse_ls_conditions(ls.en_text))
            ls.skill_type_tags.sort(key=lambda x: x.value)

        self.active_skills = build_cross_server_skills(
            jp_database.active_skills, na_database.active_skills,
            kr_database.active_skills)

        as_converter = EnASTextConverter()
        for ask in self.active_skills:
            ask.en_text = ask.jp_skill.full_text(as_converter)
            ask.skill_type_tags = list(
                skill_text_typing.parse_as_conditions(ask.en_text))
            ask.skill_type_tags.sort(key=lambda x: x.value)

        self.dungeons = build_cross_server_dungeons(
            jp_database, na_database,
            kr_database)  # type: List[CrossServerDungeon]

        self.enemy_skills = build_cross_server_enemy_skills(
            jp_database.raw_enemy_skills, na_database.raw_enemy_skills,
            kr_database.raw_enemy_skills)

        self.jp_bonuses = jp_database.bonuses
        self.na_bonuses = na_database.bonuses
        self.kr_bonuses = kr_database.bonuses

        self.jp_exchange = jp_database.exchange
        self.na_exchange = na_database.exchange
        self.kr_exchange = kr_database.exchange

        self.jp_egg_machines = jp_database.egg_machines
        self.na_egg_machines = na_database.egg_machines
        self.kr_egg_machines = kr_database.egg_machines

        self.jp_exchange = jp_database.exchange
        self.na_exchange = na_database.exchange
        self.kr_exchange = kr_database.exchange

        self.monster_id_to_card = {c.monster_id: c for c in self.all_cards}
        self.leader_id_to_leader = {s.skill_id: s for s in self.leader_skills}
        self.active_id_to_active = {s.skill_id: s for s in self.active_skills}
        self.dungeon_id_to_dungeon = {d.dungeon_id: d for d in self.dungeons}

        self.hq_image_monster_ids = []  # type: List[MonsterId]
        self.animated_monster_ids = []  # type: List[MonsterId]

        for csc in self.ownable_cards:
            if csc.leader_skill:
                csc.leader_skill = self.leader_id_to_leader[
                    csc.leader_skill.skill_id]
            if csc.active_skill:
                csc.active_skill = self.active_id_to_active[
                    csc.active_skill.skill_id]
            csc.load_text()
 def text(self, converter: ASTextConverter) -> str:
     return converter.change_monster(self)
 def load_text(self):
     self.en_ls_text = self.leader_skill.jp_skill.full_text(
         EnLSTextConverter()) if self.leader_skill else None
     self.en_as_text = self.active_skill.jp_skill.full_text(
         EnASTextConverter()) if self.active_skill else None
 def text(self, converter: ASTextConverter) -> str:
     return converter.spawn_spinner(self.turns, self.speed, self.count)
Exemple #26
0
import argparse
import os
import pathlib
import padtools
from pad.common import pad_util
from pad.common.shared_types import Server
from pad.raw.skills import skill_text_typing
from pad.raw.skills.en.active_skill_text import EnASTextConverter
from pad.raw.skills.jp.active_skill_text import JpASTextConverter
from pad.raw.skills.en.leader_skill_text import EnLSTextConverter
from pad.raw.skills.jp.leader_skill_text import JpLSTextConverter
from pad.raw.skills.jp.enemy_skill_text import JpESTextConverter
from pad.raw.skills.en.enemy_skill_text import EnESTextConverter
from pad.raw.skills.leader_skill_info import LeaderSkill

AS_CONVERTERS = (JpASTextConverter(), EnASTextConverter(), EnASTextConverter())
LS_CONVERTERS = (JpLSTextConverter(), EnLSTextConverter(), EnLSTextConverter())
ES_CONVERTERS = (JpESTextConverter(), EnESTextConverter(), EnESTextConverter())

from pad.raw_processor import merged_database
from pad.raw_processor.crossed_data import CrossServerDatabase
from pad.raw.skills.enemy_skill_info import BEHAVIOR_MAP


def parse_args():
    parser = argparse.ArgumentParser(description="Runs the integration test.",
                                     add_help=False)
    input_group = parser.add_argument_group("Input")
    input_group.add_argument("--input_dir",
                             required=True,
                             help="Path to a folder where the input data is")
 def text(self, converter: ASTextConverter) -> str:
     return converter.shield_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.auto_heal_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.ctw_convert(self)
 def text(self, converter: ASTextConverter) -> str:
     return converter.move_time_buff_convert(self)