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))
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))
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)
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, ]
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