From a4d6c53d31d806a9360b09d2e44413cdb7a26fdb Mon Sep 17 00:00:00 2001 From: Luke Robles Date: Fri, 8 Nov 2024 14:21:03 -0800 Subject: [PATCH] some more funky shit for the boss sapwn comaprison --- app/cogs/tarkov.py | 13 +++++++++---- app/tarkov.py | 6 +++--- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/app/cogs/tarkov.py b/app/cogs/tarkov.py index c3f9bcf2..183a1823 100755 --- a/app/cogs/tarkov.py +++ b/app/cogs/tarkov.py @@ -4,6 +4,7 @@ from discord.ext import commands, tasks import core_utils import discord import os +import json import random import requests @@ -29,13 +30,15 @@ class Tarkov(commands.Cog): # Wait until the bot is ready before we actually start executing code await self.bot.wait_until_ready() + spawn_file = "/tmp/boss_spawns.json" spawns_from_api = tarkov.tarkov_boss_info() - if os.path.exists("/tmp/boss_spawns.txt"): + if os.path.exists(spawn_file): embed = discord.Embed( description="-------", color=discord.Color.blue(), type="rich" ) - known_spawns = eval(open("/tmp/boss_spawns.txt", "r").read()) + with open(spawn_file, "r") as f: + known_spawns = json.load(f) changes_dict = tarkov.compare_boss_spawns(known_spawns, spawns_from_api) @@ -52,10 +55,12 @@ class Tarkov(commands.Cog): ) await self.bot.get_channel(channel_id).send(embed=embed) - open("/tmp/boss_spawns.txt", "w").write(str(spawns_from_api)) + with open(spawn_file, "w") as f: + json.dump(spawns_from_api, f) else: - open("/tmp/boss_spawns.txt", "w").write(str(spawns_from_api)) + with open(spawn_file, "w") as f: + json.dump(spawns_from_api, f) async def get_all_bosses(ctx: discord.AutocompleteContext): """ diff --git a/app/tarkov.py b/app/tarkov.py index c95b991b..a3dc1ce0 100755 --- a/app/tarkov.py +++ b/app/tarkov.py @@ -84,7 +84,7 @@ def tarkov_boss_info(): return levels -def compare_boss_spawns(known_spawns, spawns_from_api): +def compare_boss_spawns(known_spawns: dict, spawns_from_api: dict) -> dict: changes = {} # To store the changes for level in known_spawns: @@ -93,8 +93,8 @@ def compare_boss_spawns(known_spawns, spawns_from_api): boss_info_1 = known_spawns[level].get(boss, {}) boss_info_2 = spawns_from_api[level].get(boss, {}) - known_spawn_rate = boss_info_1.get("spawnChance", "N/A") - spawn_rate_from_api = boss_info_2.get("spawnChance", "N/A") + known_spawn_rate = boss_info_1.get("spawnChance", "**0%**") + spawn_rate_from_api = boss_info_2.get("spawnChance", "**0%**") if known_spawn_rate != spawn_rate_from_api: level_changes[boss] = f"{known_spawn_rate} -> {spawn_rate_from_api}"