예제 #1
0
                        HP_V['incHP' + level] = ability['Hybrid']
                        STR_V['incSTR' + level] = ability['Hybrid']

                    if 'res' in ability:
                        res_V['resEle'] = ability['resEle']
                        res_V['incRes'] = ability['res']
                else:
                    new_item[a.lower()] = 0

            new_item.update(HP_V)
            new_item.update(STR_V)
            new_item.update(res_V)

            # data_list.append(new_item)
            data_dict[uid] = new_item

    # main.save_file('list', FILE_NAME, data_list)
    main.save_file('dict', FILE_NAME, data_dict)

    if data_updates[0]:
        main.save_file('locales', FILE_NAME, names)

    if data_new:
        print(data_new)
        main.download_images(FILE_NAME, data_new)


if __name__ == '__main__':
    abilities = main.set_abilities()
    set_dragon()
예제 #2
0
def set_adventurer():
    table = "Adventurers"
    fields = (
        "Id,VariationId,Name,NameJP,WeaponType,Rarity,ElementalType," +
        "MinHp3,MinHp4,MinHp5,MaxHp,PlusHp0,PlusHp1,PlusHp2,PlusHp3,PlusHp4,McFullBonusHp5,"
        +
        "MinAtk3,MinAtk4,MinAtk5,MaxAtk,PlusAtk0,PlusAtk1,PlusAtk2,PlusAtk3,PlusAtk4,McFullBonusAtk5,"
        +
        "Skill1Name,Skill2Name,Abilities11,Abilities12,Abilities21,Abilities22,Abilities31,Abilities32,"
        + "DefCoef,IsPlayable")
    group = "Id,VariationId"
    parse_int = [
        "MinHp3",
        "MinHp4",
        "MinHp5",
        "MaxHp",
        "PlusHp0",
        "PlusHp1",
        "PlusHp2",
        "PlusHp3",
        "PlusHp4",
        "McFullBonusHp5",
        "MinAtk3",
        "MinAtk4",
        "MinAtk5",
        "MaxAtk",
        "PlusAtk0",
        "PlusAtk1",
        "PlusAtk2",
        "PlusAtk3",
        "PlusAtk4",
        "McFullBonusAtk5",
        "DefCoef",
    ]

    raw_data = main.get_data(table, fields, group)

    abilities = main.set_abilities()
    skills = main.set_skills()

    names = main.load_name(FILE_NAME)
    data_list = []
    data_dict = {}
    data_new = []
    data_updates = [False]

    for i in raw_data:
        item = i['title']
        if item['IsPlayable'] == '1':
            uid = '{}_0{}'.format(item['Id'], item['VariationId'])
            name = main.set_name(names, item, data_new, data_updates)
            weapon = item['WeaponType']
            rarity = item['Rarity']
            new_item = {
                "id": uid,
                "name": name,
                "weapon": weapon,
                "element": item["ElementalType"],
                "rarity": rarity,
            }

            for k in parse_int:
                if item[k].isdigit():
                    new_item[k] = int(item[k])

            inc_LV = {}
            inc_Value = {}

            for a in [
                    "Abilities11",
                    "Abilities12",
                    "Abilities21",
                    "Abilities22",
                    "Abilities31",
                    "Abilities32",
            ]:
                ability = abilities.get(item[a])
                if ability:
                    # new_item[a.lower()] = ability['Might']
                    new_item[a.lower()] = ability

                    level = a[-1]

                    if "STR" in ability:
                        inc_LV["STRLV" + level] = ABILITY_LEVEL.get(
                            rarity, ABILITY_LEVEL["res"])[a]
                        inc_Value["incSTR" + level] = ability["STR"]

                    if "def" in ability:
                        inc_LV["defLV" + level] = ABILITY_LEVEL.get(
                            rarity, ABILITY_LEVEL["res"])[a]
                        inc_Value["incDef" + level] = ability["def"]

            for s in ["Skill1Name", "Skill2Name"]:
                skill = skills.get(item[s], {})
                if skill:
                    new_item[s[0:6].lower()] = skill

            new_item.update(inc_LV)
            new_item.update(inc_Value)

            data_list.append(new_item)
            data_dict[uid] = new_item

    main.save_file("list", FILE_NAME, data_list)
    main.save_file("dict", FILE_NAME, data_dict)

    if data_updates[0]:
        main.save_file('locales', FILE_NAME, names)

    if data_new:
        print(data_new)
        main.download_images(FILE_NAME, data_new)
예제 #3
0
def set_dragon():
    table = "Dragons"
    fields = ("BaseId,Name,NameJP,Rarity,ElementalType," +
              "MinHp,MaxHp,MinAtk,MaxAtk,SkillName," +
              "Abilities11,Abilities12,Abilities21,Abilities22," +
              "IsPlayable")
    group = "BaseId"

    parse_int = ["MinHp", "MaxHp", "MinAtk", "MaxAtk"]

    raw_data = main.get_data(table, fields, group)
    abilities = main.set_abilities()
    skills = main.set_skills()

    names = main.load_name(FILE_NAME)

    data_new = []
    data_list = []
    data_dict = {}
    data_updates = [False]

    for i in raw_data:
        item = i['title']
        if item['BaseId'] and item['IsPlayable'] == '1':
            uid = '{}_01'.format(item['BaseId'])
            name = main.set_name(names, item, data_new, data_updates)

            new_item = {
                "id": uid,
                "name": name,
                "element": item["ElementalType"],
                "rarity": item["Rarity"],
                "skill": skills.get(item["SkillName"]),
            }

            for k in parse_int:
                new_item[k] = int(item[k])

            HP_V = {"incHP1": 0, "incHP2": 0}
            STR_V = {"incSTR1": 0, "incSTR2": 0}
            res_V = {}

            for a in [
                    "Abilities11", "Abilities12", "Abilities21", "Abilities22"
            ]:
                ability = abilities.get(item[a])
                if ability:
                    # new_item[a.lower()] = ability['Might']
                    new_item[a.lower()] = ability
                    level = a[-1]
                    if "HP" in ability:
                        HP_V["incHP" + level] = ability["HP"]
                    elif "STR" in ability:
                        STR_V["incSTR" + level] = ability["STR"]
                    elif "Hybrid" in ability:
                        HP_V["incHP" + level] = ability["Hybrid"]
                        STR_V["incSTR" + level] = ability["Hybrid"]

                    if "res" in ability:
                        res_V["resEle"] = ability["resEle"]
                        res_V["incRes"] = ability["res"]
                else:
                    new_item[a.lower()] = 0

            new_item.update(HP_V)
            new_item.update(STR_V)
            new_item.update(res_V)

            data_list.append(new_item)
            data_dict[uid] = new_item

    main.save_file("list", FILE_NAME, data_list)
    main.save_file("dict", FILE_NAME, data_dict)

    if data_updates[0]:
        main.save_file('locales', FILE_NAME, names)

    if data_new:
        print(data_new)
        main.download_images(FILE_NAME, data_new)
예제 #4
0
def set_weapon():
    table = 'Weapons'
    fields = 'Id,BaseId,FormId,WeaponName,WeaponNameJP,Type,Rarity,ElementalType,' + \
        'MinHp,MaxHp,MinAtk,MaxAtk,SkillName,Abilities11,Abilities21,IsPlayable'
    group = 'BaseId,FormId'
    parse_int = ['MinHp', 'MaxHp', 'MinAtk', 'MaxAtk']

    raw_data = main.get_data(table, fields, group)
    abilities = main.set_abilities()
    skills = main.set_skills()

    names = main.load_name(FILE_NAME)

    data_list = []
    data_dict = {}
    data_new = []
    data_updates = [False]

    for i in raw_data:
        item = i['title']
        rarity = int(item['Rarity'])
        if item['IsPlayable'] == '1' and rarity >= 3:
            uid = '{}_01_{}'.format(item['BaseId'], item['FormId'])
            name = main.set_name(names, item, data_new, data_updates)

            new_item = {
                "id": uid,
                "name": name,
                "weapon": item["Type"],
                "element": item["ElementalType"],
                "rarity": item["Rarity"],
                # 'skill': item['SkillName']
                "skill": skills.get(item["SkillName"]),
            }

            for k in parse_int:
                new_item[k] = int(item[k])

            # new_item['skill'] = item['SkillName'] != ''

            special = {}
            for a in ["Abilities11", "Abilities21"]:
                ability = abilities.get(item[a])
                if ability:
                    # new_item[a.lower()] = ability['might']
                    new_item[a.lower()] = ability

                    if "STR" in ability:
                        special["req"] = ability["req"]
                        special["incSTR"] = ability["STR"]
                    elif "def" in ability:
                        special["req"] = ability["req"]
                        special["incDef"] = ability["def"]
                else:
                    new_item[a.lower()] = 0
            if len(special):
                new_item.update(special)

            data_list.append(new_item)
            data_dict[uid] = new_item
    main.save_file("list", FILE_NAME, data_list)
    main.save_file("dict", FILE_NAME, data_dict)

    if data_updates[0]:
        main.save_file('locales', FILE_NAME, names)

    if data_new:
        print(data_new)
        main.download_images(FILE_NAME, data_new)
예제 #5
0
def set_wyrmprint():
    table = "Wyrmprints"
    fields = (
        "BaseId,Name,NameJP,Rarity,IsPlayable," +
        "MinHp,MaxHp,MinAtk,MaxAtk," +
        "Abilities11,Abilities12,Abilities13,Abilities21,Abilities22,Abilities23,Abilities31,Abilities32,Abilities33"
    )
    group = "BaseId"

    parse_int = ["MinHp", "MaxHp", "MinAtk", "MaxAtk"]

    raw_data = main.get_data(table, fields, group)
    abilities = main.set_abilities()

    names = main.load_name(FILE_NAME)

    data_new = []
    data_list = []
    data_dict = {}
    data_updates = [False]

    for i in raw_data:
        item = i['title']
        rarity = int(item['Rarity'])
        if item['BaseId'] and item['IsPlayable'] == '1' and rarity >= 3:
            uid = '{}'.format(item['BaseId'])
            name = main.set_name(names, item, data_new, data_updates)

            new_item = {"id": uid, "name": name, "rarity": item["Rarity"]}

            for k in parse_int:
                new_item[k] = int(item[k])

            addition1 = {}
            for a in [
                    "Abilities11",
                    "Abilities12",
                    "Abilities13",
                    "Abilities21",
                    "Abilities22",
                    "Abilities23",
                    "Abilities31",
                    "Abilities32",
                    "Abilities33",
            ]:
                ability = abilities.get(item[a])
                if ability:
                    # new_item[a.lower()] = ability['Might']
                    new_item[a.lower()] = ability

                    level = a[-1]

                    if 'HP' in ability:
                        addition1['incHP' + level] = ability['HP']

                    if 'STR' in ability:
                        addition1['incSTR' + level] = ability['STR']

                    if "def" in ability:
                        addition1["incDef" + level] = ability["def"]

                    if "res" in ability:
                        addition1["resEle"] = ability["resEle"]
                        addition1["incRes" + level] = ability["res"]

                    if "dungeon" in ability:
                        addition1["dungeon"] = ability["dungeon"]
                        addition1["counter" + level] = ability["counter"]
                else:
                    new_item[a.lower()] = 0

            if len(addition1):
                new_item.update(addition1)

            data_list.append(new_item)
            data_dict[uid] = new_item

    main.save_file("list", FILE_NAME, data_list)
    main.save_file("dict", FILE_NAME, data_dict)

    if data_updates[0]:
        main.save_file('locales', FILE_NAME, names)

    if data_new:
        print(data_new)
        main.download_images(FILE_NAME, data_new)