Ejemplo n.º 1
0
def show_accounts_status(cfg, ctx):
    if not has_any_account_in_normal_run(cfg):
        return
    _show_head_line(ctx)

    heads = ["序号", "账号名", "启用状态", "聚豆余额", "聚豆历史总数", "成就点", "心悦组队"]
    colSizes = [4, 12, 8, 8, 12, 6, 8]

    logger.info(tableify(heads, colSizes))
    for _idx, account_config in enumerate(cfg.account_configs):
        idx = _idx + 1
        if not account_config.is_enabled():
            # 未启用的账户的账户不走该流程
            continue

        djcHelper = DjcHelper(account_config, cfg.common)
        djcHelper.check_skey_expired()

        status = "启用" if account_config.enable else "未启用"

        djc_info = djcHelper.query_balance("查询聚豆概览", print_res=False)["data"]
        djc_allin, djc_balance = int(djc_info['allin']), int(djc_info['balance'])

        xinyue_info = djcHelper.query_xinyue_info("查询心悦成就点概览", print_res=False)
        teaminfo = djcHelper.query_xinyue_teaminfo(print_res=False)
        team_score = "无队伍"
        if teaminfo.id != "":
            team_score = "{}/20".format(teaminfo.score)
            fixed_team = djcHelper.get_fixed_team()
            if fixed_team is not None:
                team_score = "[{}]{}".format(fixed_team.id, team_score)

        cols = [idx, account_config.name, status, djc_balance, djc_allin, xinyue_info.score, team_score]

        logger.info(color("fg_bold_green") + tableify(cols, colSizes))
Ejemplo n.º 2
0
def show_accounts_status(cfg, ctx):
    logger.info("")
    _show_head_line("部分活动信息")
    logger.warning("如果一直卡在这一步,请在小助手目录下创建一个空文件:不查询活动.txt")
    Urls().show_current_valid_act_infos()

    logger.info("")
    _show_head_line("付费相关信息")
    user_buy_info = get_user_buy_info(cfg)
    show_buy_info(user_buy_info)

    if not has_any_account_in_normal_run(cfg):
        return
    _show_head_line(ctx)

    heads = ["序号", "账号名", "启用状态", "聚豆余额", "聚豆历史总数", "成就点", "心悦组队", "心悦G分", "编年史", "年史碎片", "守护者卡片", "马杰洛石头"]
    colSizes = [4, 12, 8, 8, 12, 6, 8, 8, 14, 8, 15, 10]

    logger.info(tableify(heads, colSizes))
    for _idx, account_config in enumerate(cfg.account_configs):
        idx = _idx + 1
        if not account_config.is_enabled():
            # 未启用的账户的账户不走该流程
            continue

        djcHelper = DjcHelper(account_config, cfg.common)
        djcHelper.check_skey_expired()
        djcHelper.get_bind_role_list(print_warning=False)

        status = "启用" if account_config.is_enabled() else "未启用"

        djc_info = djcHelper.query_balance("查询聚豆概览", print_res=False)["data"]
        djc_allin, djc_balance = int(djc_info['allin']), int(djc_info['balance'])

        xinyue_info = djcHelper.query_xinyue_info("查询心悦成就点概览", print_res=False)
        teaminfo = djcHelper.query_xinyue_teaminfo(print_res=False)
        team_score = "无队伍"
        if teaminfo.id != "":
            team_score = f"{teaminfo.score}/20"
            fixed_team = djcHelper.get_fixed_team()
            if fixed_team is not None:
                team_score = f"[{fixed_team.id}]{team_score}"

        gpoints = djcHelper.query_gpoints()

        ui = djcHelper.query_dnf_helper_chronicle_info()
        levelInfo = f"LV{ui.level}({ui.currentExp}/{ui.levelExp})"
        chronicle_points = ui.point
        if ui.totalExp == 0:
            levelInfo = ""
            chronicle_points = ""

        majieluo_cards = djcHelper.query_majieluo_card_info()

        stone_count = djcHelper.query_stone_count()

        cols = [idx, account_config.name, status, djc_balance, djc_allin, xinyue_info.score, team_score, gpoints, levelInfo, chronicle_points, majieluo_cards, stone_count]
        logger.info(color("fg_bold_green") + tableify(cols, colSizes, need_truncate=True))
Ejemplo n.º 3
0
def show_accounts_status(cfg, ctx):
    if not has_any_account_in_normal_run(cfg):
        return
    _show_head_line(ctx)

    heads = [
        "序号", "账号名", "启用状态", "聚豆余额", "聚豆历史总数", "成就点", "心悦组队", "闪光杯出货数",
        "赛丽亚卡片", "爆竹积分", "马杰洛石头"
    ]
    colSizes = [4, 12, 8, 8, 12, 6, 8, 12, 14, 8, 10]

    logger.info(tableify(heads, colSizes))
    for _idx, account_config in enumerate(cfg.account_configs):
        idx = _idx + 1
        if not account_config.is_enabled():
            # 未启用的账户的账户不走该流程
            continue

        djcHelper = DjcHelper(account_config, cfg.common)
        djcHelper.check_skey_expired()

        status = "启用" if account_config.is_enabled() else "未启用"

        djc_info = djcHelper.query_balance("查询聚豆概览", print_res=False)["data"]
        djc_allin, djc_balance = int(djc_info['allin']), int(
            djc_info['balance'])

        xinyue_info = djcHelper.query_xinyue_info("查询心悦成就点概览", print_res=False)
        teaminfo = djcHelper.query_xinyue_teaminfo(print_res=False)
        team_score = "无队伍"
        if teaminfo.id != "":
            team_score = f"{teaminfo.score}/20"
            fixed_team = djcHelper.get_fixed_team()
            if fixed_team is not None:
                team_score = f"[{fixed_team.id}]{team_score}"

        shanguang_equip_count = djcHelper.query_dnf_shanguang_equip_count(
            print_warning=False)

        sailiya_cards = djcHelper.query_majieluo_card_info()

        firecrackers_points = djcHelper.query_firecrackers_points()

        stone_count = djcHelper.query_stone_count()

        cols = [
            idx, account_config.name, status, djc_balance, djc_allin,
            xinyue_info.score, team_score, shanguang_equip_count,
            sailiya_cards, firecrackers_points, stone_count
        ]
        logger.info(
            color("fg_bold_green") +
            tableify(cols, colSizes, need_truncate=True))

    logger.info("")
    _show_head_line("付费相关信息")
    user_buy_info = get_user_buy_info(cfg)
    show_buy_info(user_buy_info)
Ejemplo n.º 4
0
def get_account_status(idx: int, account_config: AccountConfig,
                       common_config: CommonConfig):
    djcHelper = DjcHelper(account_config, common_config)
    djcHelper.check_skey_expired()
    djcHelper.get_bind_role_list(print_warning=False)

    status = "启用" if account_config.is_enabled() else "未启用"

    djc_info = djcHelper.query_balance("查询聚豆概览", print_res=False)["data"]
    djc_allin, djc_balance = int(djc_info['allin']), int(djc_info['balance'])

    xinyue_info = djcHelper.query_xinyue_info("查询心悦成就点概览", print_res=False)
    teaminfo = djcHelper.query_xinyue_teaminfo()
    team_award_summary = "无队伍"
    if teaminfo.id != "":
        team_award_summary = teaminfo.award_summary
        fixed_team = djcHelper.get_fixed_team()
        if fixed_team is not None:
            team_award_summary = f"[{fixed_team.id}]{team_award_summary}"

    gpoints = djcHelper.query_gpoints()

    ui = djcHelper.query_dnf_helper_chronicle_info()
    levelInfo = f"LV{ui.level}({ui.currentExp}/{ui.levelExp})"
    chronicle_points = ui.point
    if ui.totalExp == 0:
        levelInfo = ""
        chronicle_points = ""

    return [
        idx,
        account_config.name,
        status,
        djc_balance,
        djc_allin,
        xinyue_info.xytype_str,
        xinyue_info.score,
        xinyue_info.ysb,
        team_award_summary,
        xinyue_info.work_info(),
        gpoints,
        levelInfo,
        chronicle_points,
    ]
Ejemplo n.º 5
0
def try_take_xinyue_team_award(cfg):
    if not has_any_account_in_normal_run(cfg):
        return
    _show_head_line("尝试领取心悦组队奖励")

    # 所有账号运行完毕后,尝试领取一次心悦组队奖励,避免出现前面角色还没完成,后面的完成了,前面的却没领奖励
    for idx, account_config in enumerate(cfg.account_configs):
        idx += 1
        if not account_config.is_enabled():
            # 未启用的账户的账户不走该流程
            continue

        logger.info("")
        logger.warning(
            color("fg_bold_green") +
            "------------开始尝试为第{}个账户({})领取心悦组队奖励------------".format(
                idx, account_config.name))

        if len(account_config.xinyue_operations) == 0:
            logger.warning("未设置心悦相关操作信息,将跳过")
            continue

        djcHelper = DjcHelper(account_config, cfg.common)
        xinyue_info = djcHelper.query_xinyue_info("获取心悦信息", print_res=False)

        op_cfgs = [("513818", "查询小队信息"), ("514385", "领取组队奖励")]

        xinyue_operations = []
        for opcfg in op_cfgs:
            op = XinYueOperationConfig()
            op.iFlowId, op.sFlowName = opcfg
            op.count = 1
            xinyue_operations.append(op)

        for op in xinyue_operations:
            djcHelper.do_xinyue_op(xinyue_info.xytype, op)

        if cfg.common._debug_run_first_only:
            logger.warning("调试开关打开,不再处理后续账户")
            break