mirror of
https://gitlab.com/Kwoth/nadekobot.git
synced 2025-09-10 09:18:27 -04:00
docs: Upped version to 5.1.19, updated changelog
fix: Fixed timely on different shards
This commit is contained in:
28
CHANGELOG.md
28
CHANGELOG.md
@@ -2,7 +2,27 @@
|
||||
|
||||
Mostly based on [keepachangelog](https://keepachangelog.com/en/1.0.0/) except date format. a-c-f-r-o
|
||||
|
||||
## [5.1.19]
|
||||
## [5.1.19] - 04.11.2024
|
||||
|
||||
### Added
|
||||
|
||||
- Added `.betstats`
|
||||
- See your own stats with .betstats
|
||||
- Target someone else: .betstats @seraphe
|
||||
- You can also specify a game .betstats lula
|
||||
- Or both! .betstats seraphe br
|
||||
- `.timely` can now have a server boost bonus
|
||||
- Configure server ids and reward amount in data/gambling.yml
|
||||
- anyone who boosts one of the sepcified servers gets the amount as base timely bonus
|
||||
|
||||
### Changed
|
||||
|
||||
- `.plant/pick` password font size will be slightly bigger
|
||||
|
||||
### Fixed
|
||||
|
||||
- `.xplb` and `.xpglb` now have proper ranks after page 1
|
||||
- Fixed boost bonus on shards different than the specified servers' shard
|
||||
|
||||
## [5.1.18] - 02.11.2024
|
||||
|
||||
@@ -14,14 +34,16 @@ Mostly based on [keepachangelog](https://keepachangelog.com/en/1.0.0/) except da
|
||||
language of that country
|
||||
- 5 second cooldown per user
|
||||
- The message can only be translated once per language (counter resets every 24h)
|
||||
- `.timely` now has a button. Togglable via `.conf gambling` it's called pass because previously it was a captcha, but captchas are too annoying
|
||||
- `.timely` now has a button. Togglable via `.conf gambling` it's called pass because previously it was a captcha, but
|
||||
captchas are too annoying
|
||||
|
||||
## Changed
|
||||
|
||||
- [public bot] Patreon reward bonus for flowers reduced. Timely bonuses stay the same
|
||||
- discriminators removed from the databases. All users who had ???? as discriminator have been renamed to ??username.
|
||||
- all new unknown users will have ??Unknown as their name
|
||||
- Flower currency generation will now have a strikeout to try combat the pickbots. This is the weakest but easiest protection to implement. There may be more options in the future
|
||||
- Flower currency generation will now have a strikeout to try combat the pickbots. This is the weakest but easiest
|
||||
protection to implement. There may be more options in the future
|
||||
|
||||
## Fixed
|
||||
|
||||
|
@@ -241,12 +241,12 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||
await msg.DeleteAsync();
|
||||
return;
|
||||
}
|
||||
else if(Config.Timely.ProtType == TimelyProt.Captcha)
|
||||
else if (Config.Timely.ProtType == TimelyProt.Captcha)
|
||||
{
|
||||
var password = _service.GeneratePassword();
|
||||
|
||||
|
||||
var img = new Image<Rgba32>(70, 35);
|
||||
|
||||
|
||||
var font = _fonts.NotoSans.CreateFont(30);
|
||||
var outlinePen = new SolidPen(Color.Black, 1f);
|
||||
var strikeoutRun = new RichTextRun
|
||||
@@ -291,7 +291,6 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||
{
|
||||
_ = captcha.DeleteAsync();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
await ClaimTimely();
|
||||
@@ -325,22 +324,19 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||
{
|
||||
try
|
||||
{
|
||||
var guild = await ((IDiscordClient)_client).GetGuildAsync(gid);
|
||||
if (guild is null)
|
||||
return null;
|
||||
|
||||
var user = await guild.GetUserAsync(ctx.User.Id);
|
||||
return user;
|
||||
var guild = await _client.Rest.GetGuildAsync(gid, false);
|
||||
var user = await _client.Rest.GetGuildUserAsync(gid, ctx.User.Id);
|
||||
return (guild, user);
|
||||
}
|
||||
catch
|
||||
{
|
||||
return null;
|
||||
return default;
|
||||
}
|
||||
})
|
||||
.WhenAll();
|
||||
|
||||
var boostGuildUser = guildUsers.FirstOrDefault(x => x?.PremiumSince is not null);
|
||||
var booster = boostGuildUser is not null;
|
||||
var userInfo = guildUsers.FirstOrDefault(x => x.user?.PremiumSince is not null);
|
||||
var booster = userInfo != default;
|
||||
|
||||
if (booster)
|
||||
val += Config.BoostBonus.BaseTimelyBonus;
|
||||
@@ -359,7 +355,7 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||
{
|
||||
var msg = GetText(strs.timely(N(val), period))
|
||||
+ "\n\n"
|
||||
+ $"*+{N(Config.BoostBonus.BaseTimelyBonus)} bonus for boosting {boostGuildUser.Guild}!*";
|
||||
+ $"*+{N(Config.BoostBonus.BaseTimelyBonus)} bonus for boosting {userInfo.guild}!*";
|
||||
|
||||
await Response().Confirm(msg).Interaction(inter).SendAsync();
|
||||
}
|
||||
|
@@ -147,7 +147,7 @@ public class PlantPickService : INService, IExecNoCommand
|
||||
pass = pass.TrimTo(10, true).ToLowerInvariant();
|
||||
using var img = Image.Load<Rgba32>(curImg);
|
||||
// choose font size based on the image height, so that it's visible
|
||||
var font = _fonts.NotoSans.CreateFont(img.Height / 12.0f, FontStyle.Bold);
|
||||
var font = _fonts.NotoSans.CreateFont(img.Height / 11.0f, FontStyle.Bold);
|
||||
img.Mutate(x =>
|
||||
{
|
||||
// measure the size of the text to be drawing
|
||||
@@ -159,7 +159,7 @@ public class PlantPickService : INService, IExecNoCommand
|
||||
|
||||
// fill the background with black, add 5 pixels on each side to make it look better
|
||||
x.FillPolygon(Color.ParseHex("00000080"),
|
||||
new PointF(0, 0),
|
||||
new PointF(1, 1),
|
||||
new PointF(size.Width + 5, 0),
|
||||
new PointF(size.Width + 5, size.Height + 10),
|
||||
new PointF(0, size.Height + 10));
|
||||
|
@@ -4,7 +4,7 @@
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>true</ImplicitUsings>
|
||||
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
|
||||
<Version>5.1.18</Version>
|
||||
<Version>5.1.19</Version>
|
||||
|
||||
<!-- Output/build -->
|
||||
<RunWorkingDirectory>$(MSBuildProjectDirectory)</RunWorkingDirectory>
|
||||
|
@@ -2758,11 +2758,29 @@
|
||||
"Gambling": [
|
||||
{
|
||||
"Aliases": [
|
||||
".betstats"
|
||||
".betstats",
|
||||
".bs"
|
||||
],
|
||||
"Description": "Shows the current bet stats for yourself, or the targetted user.\nYou may optionally specify the game to show stats for.\nSupported games right now are: bf, br, bd, lula, slot, race",
|
||||
"Usage": [
|
||||
".betstats",
|
||||
".betstats @someone",
|
||||
".betstats @someone lula",
|
||||
".betstats bd"
|
||||
],
|
||||
"Submodule": "Gambling",
|
||||
"Module": "Gambling",
|
||||
"Options": null,
|
||||
"Requirements": []
|
||||
},
|
||||
{
|
||||
"Aliases": [
|
||||
".gamblestats",
|
||||
".gs"
|
||||
],
|
||||
"Description": "Shows the total stats of several gambling features.\nUpdates once an hour.",
|
||||
"Usage": [
|
||||
".betstats"
|
||||
".gamblestats"
|
||||
],
|
||||
"Submodule": "Gambling",
|
||||
"Module": "Gambling",
|
||||
@@ -6160,6 +6178,24 @@
|
||||
"Options": null,
|
||||
"Requirements": []
|
||||
},
|
||||
{
|
||||
"Aliases": [
|
||||
".translateflags",
|
||||
".trfl",
|
||||
".fltr",
|
||||
".transflags"
|
||||
],
|
||||
"Description": "Toggles translate flags on the current channel.\nReacting with a country flag will translate the message to that country's language.",
|
||||
"Usage": [
|
||||
".translateflags"
|
||||
],
|
||||
"Submodule": "TranslateCommands",
|
||||
"Module": "Searches",
|
||||
"Options": null,
|
||||
"Requirements": [
|
||||
"ManageChannels Channel Permission"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Aliases": [
|
||||
".xkcd"
|
||||
|
@@ -1,5 +1,5 @@
|
||||
# DO NOT CHANGE
|
||||
version: 10
|
||||
version: 11
|
||||
# Currency settings
|
||||
currency:
|
||||
# What is the emoji/character which represents the currency
|
||||
@@ -277,6 +277,7 @@ slots:
|
||||
# Bonus config for server boosts
|
||||
boostBonus:
|
||||
# Users will receive a bonus if they boost any of these servers
|
||||
guildIds: []
|
||||
guildIds:
|
||||
- 117523346618318850
|
||||
# This bonus will be added before any other multiplier is applied to the .timely command
|
||||
baseTimelyBonus: 50
|
||||
|
Reference in New Issue
Block a user