Compare commits

..

1 Commits
5.3.3 ... 5.3.0

Author SHA1 Message Date
Kwoth
5f24485acf docs: Updated commandlist 2024-12-10 07:19:14 +00:00
13 changed files with 26 additions and 75 deletions

View File

@@ -2,37 +2,7 @@
Mostly based on [keepachangelog](https://keepachangelog.com/en/1.0.0/) except date format. a-c-f-r-o
## [5.3.3] - 15.12.2024
## Fixed
- `.notify` commands are no longer owner only, they now require Admin permissions
- `.notify` messages can now mention anyone
## [5.3.2] - 14.12.2024
## Fixed
- `.banner` should be working properly now with both server and global user banners
## [5.3.1] - 13.12.2024
## Changed
- `.translate` will now use 2 embeds, to allow for longer messages
- Added role icon to `.inrole`, if it exists
- `.honeypot` will now add a 'Honeypot' as a ban reason.
## Fixed
- `.winlb` looks better, has a title, shows 9 entries now
- `.sar ex` help updated
- `.banner` partially fixed, it still can't show global banners, but it will show guild ones correctly, in a good enough size
- `.sclr` will now show correct color hexes without alpha
- `.dmcmd` will now correctly block commands in dms, not globally
## [5.3.0] - 10.12.2024
## [5.3.0] - 07.12.2024
## Added
@@ -65,12 +35,10 @@ Mostly based on [keepachangelog](https://keepachangelog.com/en/1.0.0/) except da
- `.sclr show` will now show hex code of the current color
- Queueing a song will now restart the playback if the queue is on the last track and stopped (there were no more tracks
to play)
- `.translate` will now use 2 embeds instead of 1
## Fixed
- .setstream and .setactivity will now pause .ropl (rotating statuses)
- Fixed `.sar ex` help description
## Removed

View File

@@ -71,7 +71,7 @@ public sealed class HoneyPotService : IHoneyPotService, IReadyExecutor, IExecNoC
try
{
Log.Information("Honeypot caught user {User} [{UserId}]", user, user.Id);
await user.BanAsync(pruneDays: 1, reason: "Honeypot");
await user.BanAsync(pruneDays: 1);
await user.Guild.RemoveBanAsync(user.Id);
}
catch (Exception e)

View File

@@ -8,7 +8,7 @@ public partial class Administration
public class NotifyCommands : NadekoModule<NotifyService>
{
[Cmd]
[UserPerm(GuildPerm.Administrator)]
[OwnerOnly]
public async Task Notify()
{
await Response()
@@ -42,7 +42,7 @@ public partial class Administration
};
[Cmd]
[UserPerm(GuildPerm.Administrator)]
[OwnerOnly]
public async Task Notify(NotifyType nType, [Leftover] string? message = null)
{
if (string.IsNullOrWhiteSpace(message))
@@ -76,7 +76,7 @@ public partial class Administration
}
[Cmd]
[UserPerm(GuildPerm.Administrator)]
[OwnerOnly]
public async Task NotifyList(int page = 1)
{
if (--page < 0)
@@ -104,7 +104,7 @@ public partial class Administration
}
[Cmd]
[UserPerm(GuildPerm.Administrator)]
[OwnerOnly]
public async Task NotifyClear(NotifyType nType)
{
await _service.DisableAsync(ctx.Guild.Id, nType);

View File

@@ -75,7 +75,7 @@ public sealed class NotifyService : IReadyExecutor, INotifySubscriber, INService
data);
}
}
private async Task OnEvent<T>(T model)
where T : struct, INotifyModel
{
@@ -146,7 +146,6 @@ public sealed class NotifyService : IReadyExecutor, INotifySubscriber, INService
await _mss.Response(channel)
.Text(st)
.Sanitize(false)
.SendAsync();
}

View File

@@ -149,10 +149,7 @@ public partial class Gambling
?? (await _userService.GetUserAsync(x.UserId))?.Username
?? x.UserId.ToString();
if (user.StartsWith("??"))
user = x.UserId.ToString();
outputItems.Add(new WinLbStat(i + 1 + (page * 9), user, x.Game, x.MaxWin));
outputItems.Add(new WinLbStat(i + 1 + (page * 10), user, x.Game, x.MaxWin));
}
return outputItems;
@@ -169,12 +166,11 @@ public partial class Gambling
await Response()
.Paginated()
.PageItems(p => GetCachedWinLbAsync(p))
.PageSize(9)
.PageSize(10)
.Page((items, curPage) =>
{
var eb = CreateEmbed()
.WithTitle(GetText(strs.winlb))
.WithOkColor();
.WithOkColor();
if (items.Count == 0)
{
@@ -186,8 +182,7 @@ public partial class Gambling
{
var item = items[i];
eb.AddField($"#{item.Rank} {item.User}",
$"{N(item.MaxWin)}\n`{item.Game.ToString().ToLower()}`",
true);
$"{N(item.MaxWin)}\n`{item.Game.ToString().ToLower()}`");
}
return eb;

View File

@@ -135,6 +135,7 @@ public partial class Gambling : GamblingModule<GamblingService>
});
[Cmd]
[RequireContext(ContextType.Guild)]
public async Task Timely()
{
var val = Config.Timely.Amount;

View File

@@ -60,8 +60,8 @@ public sealed class UserBetStatsService : INService
await using var ctx = _db.GetDbContext();
return await ctx.GetTable<UserBetStats>()
.OrderByDescending(x => x.MaxWin)
.Skip(page * 9)
.Take(9)
.Skip(page * 10)
.Take(10)
.ToArrayAsyncLinqToDB();
}
}

View File

@@ -92,13 +92,13 @@ public class GlobalPermissionService : IExecPreCommand, INService
{
if (priv)
{
if (bs.DmBlocked.Commands.Add(commandName))
if (bs.Blocked.Commands.Add(commandName))
{
added = true;
}
else
{
bs.DmBlocked.Commands.Remove(commandName);
bs.Blocked.Commands.Remove(commandName);
added = false;
}

View File

@@ -417,25 +417,15 @@ public partial class Searches : NadekoModule<SearchesService>
{
usr ??= (IGuildUser)ctx.User;
var bannerUrl = usr.GetGuildBannerUrl(size: 2048)
?? (await ((DiscordSocketClient)ctx.Client).Rest.GetUserAsync(usr.Id))?.GetBannerUrl();
if (bannerUrl is null)
{
await Response()
.Error(strs.no_banner)
.SendAsync();
return;
}
var bannerUrl = usr.GetGuildBannerUrl();
await Response()
.Embed(
CreateEmbed()
.WithOkColor()
.AddField("Username", usr.ToString(), true)
.AddField("Banner Url", bannerUrl, true)
.WithImageUrl(bannerUrl))
.AddField("Username", usr.ToString())
.AddField("Banner Url", bannerUrl)
.WithThumbnailUrl(bannerUrl))
.SendAsync();
}

View File

@@ -13,9 +13,9 @@ public partial class Utility
public async Task ServerColorsShow()
{
var colors = _service.GetColors(ctx.Guild.Id);
var okHex = colors?.Ok?.RawValue.ToString("x6");
var warnHex = colors?.Warn?.RawValue.ToString("x6");
var errHex = colors?.Error?.RawValue.ToString("x6");
var okHex = colors?.Ok?.RawValue.ToString("X8");
var warnHex = colors?.Warn?.RawValue.ToString("X8");
var errHex = colors?.Error?.RawValue.ToString("X8");
EmbedBuilder[] ebs =
[
CreateEmbed()

View File

@@ -186,7 +186,7 @@ public partial class Utility : NadekoModule
return CreateEmbed()
.WithOkColor()
.WithTitle(GetText(strs.inrole_list(role?.GetIconUrl() + roleName, roleUsers.Count)))
.WithTitle(GetText(strs.inrole_list(roleName, roleUsers.Count)))
.WithDescription(string.Join("\n", pageUsers));
})
.SendAsync();

View File

@@ -4,7 +4,7 @@
<Nullable>enable</Nullable>
<ImplicitUsings>true</ImplicitUsings>
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
<Version>5.3.3</Version>
<Version>5.3.0</Version>
<!-- Output/build -->
<RunWorkingDirectory>$(MSBuildProjectDirectory)</RunWorkingDirectory>

View File

@@ -1157,7 +1157,5 @@
"notify_desc_protection": "Triggers when antialt, antispam or antiraid is triggered.",
"notify_desc_addrolerew": "Triggers when a user gets a role as a reward for reaching a level (xprew).",
"notify_desc_removerolerew": "Triggers when a user loses a role as a reward for reaching a level (xprew).",
"notify_desc_not_found": "No description found for this notify event. Please report this.",
"winlb": "Biggest Wins Leaderboard",
"no_banner": "No banner set."
"notify_desc_not_found": "No description found for this notify event. Please report this."
}