diff --git a/src/EllieBot/Modules/Gambling/Gambling.cs b/src/EllieBot/Modules/Gambling/Gambling.cs index e6e9392..e809b71 100644 --- a/src/EllieBot/Modules/Gambling/Gambling.cs +++ b/src/EllieBot/Modules/Gambling/Gambling.cs @@ -152,29 +152,12 @@ public partial class Gambling : GamblingModule<GamblingService> return; } - if (await _vrs.LastVoted(ctx.User.Id) is { } remainder) - { - // Get correct time form remainder - var interaction = CreateRemindMeInteraction(remainder.TotalMilliseconds); - - // Removes timely button if there is a timely reminder in DB - if (_service.UserHasTimelyReminder(ctx.User.Id)) - { - interaction = null; - } - - var now = DateTime.UtcNow; - var relativeTag = TimestampTag.FromDateTime(now.Add(remainder), TimestampTagStyles.Relative); - await Response().Pending(strs.vote_already_claimed(relativeTag)).Interaction(interaction).SendAsync(); - return; - } - var (amount, msg) = await _service.GetAmountAndMessage(ctx.User.Id, reward); var prepend = GetText(strs.vote_suggest(Format.Bold(N(amount)))); msg = prepend + "\n\n" + msg; - var inter = CreateRemindMeInteraction(6) as EllieButtonInteractionHandler; + var inter = CreateRemindMeInteraction(12) as EllieButtonInteractionHandler; var eb = CreateEmbed() .WithOkColor() .WithDescription(msg); diff --git a/src/EllieBot/Modules/Gambling/VoteRewardService.cs b/src/EllieBot/Modules/Gambling/VoteRewardService.cs index 06a48ad..2be7df2 100644 --- a/src/EllieBot/Modules/Gambling/VoteRewardService.cs +++ b/src/EllieBot/Modules/Gambling/VoteRewardService.cs @@ -10,15 +10,11 @@ public class VoteRewardService( GamblingConfigService gcs, GamblingService gs, CurrencyService cs, - IBotCache cache, DiscordSocketClient client, IMessageSenderService sender, IBotCreds creds ) : IEService, IReadyExecutor { - private TypedKey<DateTime> VoteKey(ulong userId) - => new($"vote:{userId}"); - private Server? _app; private IMessageChannel? _voteFeedChannel; @@ -63,13 +59,6 @@ public class VoteRewardService( if (reward <= 0) return; - var key = VoteKey(userId); - if (!await cache.AddAsync(key, DateTime.UtcNow, expiry: TimeSpan.FromHours(6))) - { - Log.Information("User {UserId} has already voted in the last 6 hours", userId); - return; - } - (reward, var msg) = await gs.GetAmountAndMessage(userId, reward); await cs.AddAsync(userId, reward, new("vote", requestType.ToString())); @@ -79,7 +68,8 @@ public class VoteRewardService( { var user = await client.GetUserAsync(userId); - await sender.Response(user) + await sender + .Response(user) .Confirm(strs.vote_reward(N(reward)) + "\n\n" + msg) .SendAsync(); } @@ -108,15 +98,6 @@ public class VoteRewardService( }); } - public async Task<TimeSpan?> LastVoted(ulong userId) - { - var key = VoteKey(userId); - var last = await cache.GetAsync(key); - return last.Match( - static x => DateTime.UtcNow.Subtract(x), - static _ => default(TimeSpan?)); - } - private string N(long amount) => CurrencyHelper.N(amount, CultureInfo.InvariantCulture, gcs.Data.Currency.Sign); } diff --git a/src/EllieBot/strings/aliases.yml b/src/EllieBot/strings/aliases.yml index aee816e..9f8d448 100644 --- a/src/EllieBot/strings/aliases.yml +++ b/src/EllieBot/strings/aliases.yml @@ -1661,6 +1661,9 @@ questlog: - questlog - qlog - myquests + - quest + - quests + - dailies fishshop: - fishshop - fishop diff --git a/src/EllieBot/strings/responses/responses.en-US.json b/src/EllieBot/strings/responses/responses.en-US.json index 0518c14..9eee84a 100644 --- a/src/EllieBot/strings/responses/responses.en-US.json +++ b/src/EllieBot/strings/responses/responses.en-US.json @@ -930,7 +930,6 @@ "autodc_disable": "I will no longer disconnect from the voice channel when there are no more tracks to play.", "timely_none": "Bot owner didn't specify a timely reward.", "timely_already_claimed": "You've already claimed your timely reward. You can get it again {0}.", - "vote_already_claimed": "You've already voted. You can vote again {0}.", "timely": "You've claimed your {0}. You can claim again in {1}h", "timely_set": "Users will be able to claim {0} every {1}h", "timely_set_none": "Users will not be able to claim any timely currency.",