diff --git a/commands/utils.py b/commands/misc.py similarity index 98% rename from commands/utils.py rename to commands/misc.py index cbb1606..a3fac13 100644 --- a/commands/utils.py +++ b/commands/misc.py @@ -6,7 +6,7 @@ import discord from discord import app_commands -from src.latex_render import latex_render +from utils.latex_render import latex_render if TYPE_CHECKING: from bot import ChouetteBot diff --git a/commands/skyblock.py b/commands/skyblock.py index 1fe40b5..645c3e4 100644 --- a/commands/skyblock.py +++ b/commands/skyblock.py @@ -1,5 +1,6 @@ from __future__ import annotations +import re from datetime import datetime, timezone from typing import TYPE_CHECKING @@ -7,7 +8,7 @@ import discord from discord import app_commands -from src.skyblock_guild import check +from utils.skyblock_guild import check if TYPE_CHECKING: from bot import ChouetteBot @@ -35,23 +36,46 @@ async def mods(self, interaction: discord.Interaction[ChouetteBot]): ) as response: dungeonsguide = await response.json() async with session.get( - f"{api_github}Moulberry/NotEnoughUpdates/releases/latest" + f"{api_github}NotEnoughUpdates/NotEnoughUpdates/releases" ) as response: notenoughupdates = await response.json() async with session.get( - f"{api_github}BiscuitDevelopment/SkyblockAddons/releases/latest" + f"{api_github}Fix3dll/SkyblockAddons/contents/gradle.properties", + headers={"Accept": "application/vnd.github.raw"}, ) as response: - skyblockaddons = await response.json() + content = await response.text() + sba_version = re.search( + r"^version\s?=\s?(.*)$", content, re.MULTILINE + ) + async with session.get( + f"{api_github}Fix3dll/SkyblockAddons/actions/runs" + ) as response: + content = await response.json() + for run in content["workflow_runs"]: + if run["head_branch"] == "main": + skyblockaddons = ( + f"{sba_version.group(1)}+{run['run_number']}" + ) + artifact_url = run["artifacts_url"] + check_id = run["check_suite_id"] + break + async with session.get(artifact_url) as response: + resp = await response.json() + artifact_id = resp["artifacts"][0]["id"] async with session.get( f"{api_github}Skytils/SkytilsMod/releases/latest" ) as response: skytils = await response.json() await interaction.followup.send( - f"The latest releases are :\n" - f"Dungeons Guide : `{dungeonsguide['name'].replace('v', '')}`\n" - f"Not Enough Updates : `{notenoughupdates['name']}`\n" - f"SkyblockAddons : `{skyblockaddons['name'].replace('Patch v', '')}`\n" - f"Skytils : `{skytils['name'].replace('Skytils ', '')}`" + f"The latest releases are:\n" + f"- Dungeons-Guide: `{dungeonsguide['tag_name']}` " + f"[link]({dungeonsguide['assets'][0]['browser_download_url']})\n" + f"- NotEnoughUpdates: `{notenoughupdates[0]['tag_name'].replace('v', '')}` " + f"[link]({notenoughupdates[0]['assets'][0]['browser_download_url']})\n" + f"- SkyblockAddons (forked by Fix3dll): `{skyblockaddons}` " + f"[link](https://github.com/Fix3dll/SkyblockAddons/suites/{check_id}/artifacts/{artifact_id})\n" + f"- Skytils: `{skytils['tag_name'].replace('v', '')}` " + f"[link]({skytils['assets'][0]['browser_download_url']})" ) # Make a command to check if it's raining in Spider's Den in Hypixel Skyblock diff --git a/commands_list.py b/commands_list.py index 523b3be..4b240b7 100644 --- a/commands_list.py +++ b/commands_list.py @@ -5,8 +5,8 @@ import discord from commands.admin import whisper +from commands.misc import latex, die_roll, ping, cheh, pin, delete from commands.skyblock import Skyblock -from commands.utils import latex, die_roll, ping, cheh, pin, delete if TYPE_CHECKING: from bot import ChouetteBot diff --git a/responses.py b/responses.py index f82c0b2..7088868 100644 --- a/responses.py +++ b/responses.py @@ -5,7 +5,7 @@ import discord from discord.abc import Messageable -from src.latex_render import latex_process +from utils.latex_render import latex_process if TYPE_CHECKING: from bot import ChouetteBot diff --git a/src/latex_render.py b/utils/latex_render.py similarity index 100% rename from src/latex_render.py rename to utils/latex_render.py diff --git a/src/skyblock_guild.py b/utils/skyblock_guild.py similarity index 100% rename from src/skyblock_guild.py rename to utils/skyblock_guild.py