Add user cache to ctc2 guesses
This commit is contained in:
parent
f53fae1dcf
commit
469c0a9351
1 changed files with 5 additions and 1 deletions
|
@ -5,6 +5,8 @@ import re
|
|||
import aiohttp
|
||||
from jarvis_core.db import q
|
||||
from jarvis_core.db.models import Guess
|
||||
|
||||
from jarvis.utils import build_embed
|
||||
from naff import Client, Extension, InteractionContext
|
||||
from naff.ext.paginators import Paginator
|
||||
from naff.models.discord.components import ActionRow, Button, ButtonStyles
|
||||
|
@ -109,14 +111,16 @@ class CTCCog(Extension):
|
|||
@cooldown(bucket=Buckets.USER, rate=1, interval=2)
|
||||
async def _guesses(self, ctx: InteractionContext) -> None:
|
||||
await ctx.defer()
|
||||
cache = {}
|
||||
guesses = Guess.find().sort("correct", -1).sort("id", -1)
|
||||
fields = []
|
||||
async for guess in guesses:
|
||||
user = await self.bot.fetch_user(guess["user"])
|
||||
user = cache.get(guess["user"]) or await self.bot.fetch_user(guess["user"])
|
||||
if not user:
|
||||
user = "[redacted]"
|
||||
if isinstance(user, (Member, User)):
|
||||
user = user.username + "#" + user.discriminator
|
||||
cache[guess["user"]] = user
|
||||
name = "Correctly" if guess["correct"] else "Incorrectly"
|
||||
name += " guessed by: " + user
|
||||
fields.append(
|
||||
|
|
Loading…
Add table
Reference in a new issue