diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml
index 7cf40ef..f74f899 100644
--- a/.github/workflows/dotnet.yml
+++ b/.github/workflows/dotnet.yml
@@ -16,7 +16,7 @@ jobs:
- name: Setup .NET
uses: actions/setup-dotnet@v1
with:
- dotnet-version: 8.0.x
+ dotnet-version: 9.0.x
- name: Install dependencies
run: dotnet restore
- name: Build
diff --git a/Dockerfile b/Dockerfile
index 229dead..7ff82da 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,10 +1,10 @@
-FROM mcr.microsoft.com/dotnet/sdk:8.0 as builder
+FROM mcr.microsoft.com/dotnet/sdk:9.0 as builder
WORKDIR /repo
COPY . .
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
RUN dotnet publish src/iTool.DiscordBot --configuration Release --output="/app"
-FROM mcr.microsoft.com/dotnet/runtime:8.0
+FROM mcr.microsoft.com/dotnet/runtime:9.0
COPY --from=builder /app /app
WORKDIR /app
VOLUME /app/settings /app/data
diff --git a/NuGet.Config b/NuGet.Config
deleted file mode 100644
index 208625b..0000000
--- a/NuGet.Config
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/README.md b/README.md
index fbae7e0..e921205 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,8 @@
# iTool.DiscordBot
-![.NET][github-actions-badge] [![codecov][codecov-badge]][codecov-link] [![Discord][discord-badge]][discord-invite]
+![.NET][github-actions-badge] [![codecov][codecov-badge]][codecov-link] [![Discord][discord-badge]][discord-invite]
-i-Tool bot is a general purpose bot that has moderation commands, can check your CS:GO, Battlefield 3, 4, H and HOTS stats and a lot more!
+i-Tool bot is a general purpose bot that has moderation commands, can check your CS:GO, Battlefield 3, 4, H stats and a lot more!
## Commands
@@ -82,12 +82,6 @@ i-Tool bot is a general purpose bot that has moderation commands, can check your
| prefix | | | Returns the current prefix |
| prefix | setprefix, prefix set | | Sets the current prefix |
-## HOTS commands
-
-| Command | Aliases | Permission | Description |
-| ------- | ------- | ---------- | ----------- |
-| hotsstats | | | Returns the HOTS stats of the player |
-
## Steam commands
| Command | Aliases | Permission | Description |
diff --git a/src/iTool.DiscordBot/Modules/HOTSModule.cs b/src/iTool.DiscordBot/Modules/HOTSModule.cs
deleted file mode 100644
index 164a1b0..0000000
--- a/src/iTool.DiscordBot/Modules/HOTSModule.cs
+++ /dev/null
@@ -1,109 +0,0 @@
-using System.Threading.Tasks;
-using Discord;
-using Discord.Commands;
-using HOTSLogs;
-
-namespace iTool.DiscordBot.Modules
-{
- public sealed class HOTSModule : ModuleBase
- {
- private static HOTSLogsClient _client;
- private readonly Settings _settings;
-
- public HOTSModule(Settings settings)
- {
- _client ??= new HOTSLogsClient();
- _settings = settings;
- }
-
- [Command("hotsstats")]
- [Summary("Returns the HOTS stats of the player")]
- public async Task HOTSStats(Region region, string battleTag)
- {
- Player player = await _client.GetPlayerSummary(region, battleTag).ConfigureAwait(false);
- if (player == null)
- {
- await ReplyAsync(
- string.Empty,
- embed: new EmbedBuilder()
- {
- Title = $"No player found",
- Color = _settings.GetErrorColor(),
- Description = "No player was found matching those criteria."
- }.Build()).ConfigureAwait(false);
- return;
- }
-
- EmbedBuilder b = new EmbedBuilder()
- {
- Title = $"HOTS player summary for {player.Name}",
- Color = _settings.GetColor(),
- Url = $"https://www.hotslogs.com/Player/Profile?PlayerID={player.PlayerID}",
- ThumbnailUrl = "https://eu.battle.net/heroes/static/images/logos/logo.png",
- Footer = new EmbedFooterBuilder()
- {
- Text = "Powered by hotslogs.com",
- }
- }
- .AddField("PlayerID", player.PlayerID.ToString(), true)
- .AddField("Name", player.Name, true);
-
- foreach (Ranking ranking in player.LeaderboardRankings)
- {
- b.AddField(f =>
- {
- f.IsInline = true;
- f.Name = ranking.GameMode;
- f.Value = $"**LeagueID**: {ranking.LeagueID}\n" +
- $"- **LeagueRank**: {ranking.LeagueRank}\n" +
- $"- **CurrentMMR**: {ranking.CurrentMMR}";
- });
- }
-
- await ReplyAsync(string.Empty, embed: b.Build()).ConfigureAwait(false);
- }
-
- [Command("hotsstats")]
- [Summary("Returns the HOTS stats of the player")]
- public async Task HOTSStats(int playerID)
- {
- Player player = await _client.GetPlayerSummary(playerID).ConfigureAwait(false);
- if (player == null)
- {
- await ReplyAsync(
- string.Empty,
- embed: new EmbedBuilder()
- {
- Title = $"No player found",
- Color = _settings.GetErrorColor(),
- Description = "No player was found matching those criteria."
- }.Build()).ConfigureAwait(false);
- return;
- }
-
- EmbedBuilder b = new EmbedBuilder()
- {
- Title = $"HOTS player summary for {player.Name}",
- Color = _settings.GetColor(),
- Url = $"https://www.hotslogs.com/Player/Profile?PlayerID={player.PlayerID}",
- ThumbnailUrl = "https://eu.battle.net/heroes/static/images/logos/logo.png"
- }
- .AddField("PlayerID", player.PlayerID.ToString(), true)
- .AddField("Name", player.Name, true);
-
- foreach (Ranking ranking in player.LeaderboardRankings)
- {
- b.AddField(f =>
- {
- f.IsInline = true;
- f.Name = ranking.GameMode;
- f.Value = $"- **LeagueID**: {ranking.LeagueID}\n" +
- $"- **LeagueRank**: {ranking.LeagueRank}\n" +
- $"- **CurrentMMR**: {ranking.CurrentMMR}";
- });
- }
-
- await ReplyAsync(string.Empty, embed: b.Build()).ConfigureAwait(false);
- }
- }
-}
diff --git a/src/iTool.DiscordBot/iTool.DiscordBot.csproj b/src/iTool.DiscordBot/iTool.DiscordBot.csproj
index 03344b0..dcc02c3 100644
--- a/src/iTool.DiscordBot/iTool.DiscordBot.csproj
+++ b/src/iTool.DiscordBot/iTool.DiscordBot.csproj
@@ -1,21 +1,20 @@
-
+
Exe
- net8.0
+ net9.0
true
-
-
-
-
+
+
+
+
-
-
+
diff --git a/tests/iTool.DiscordBot.Tests/iTool.DiscordBot.Tests.csproj b/tests/iTool.DiscordBot.Tests/iTool.DiscordBot.Tests.csproj
index 9128bfd..d49e307 100644
--- a/tests/iTool.DiscordBot.Tests/iTool.DiscordBot.Tests.csproj
+++ b/tests/iTool.DiscordBot.Tests/iTool.DiscordBot.Tests.csproj
@@ -1,7 +1,7 @@
- net8.0
+ net9.0
false