簡體   English   中英

我如何將 discord 反應保存為變量

[英]How do i save discord reaction as a variable

我有這個代碼發送一條帶有 4 個反應的消息,有沒有辦法接受用戶輸入的第一個反應(如果用戶選擇另一個選項,它只需要一個輸入,它會覆蓋第一個也可以的)和將其保存為變量以供以后使用?

import discord
import os
client = discord.Client()
some_list = []
msg = None

    
@client.event
async def on_ready():
    print('We have logged in as {0.user}'.format(client))
@client.event
async def on_message(message):
  if message.author == client.user:
    return
  msg = await message.channel.send("**Question 1?**")
  reactions = ['1️⃣','2️⃣','3️⃣','4️⃣']
  for emoji in reactions: 
    await msg.add_reaction(emoji)
@client.event
async def on_reaction_add(reaction, user):
    if reaction.message == msg:
        some_list.append(user)
client.run("token")

提前致謝!

你真的應該使用wait_for一個如何使用它的例子可以在我之前的回答中找到: Getting input from reactor not working discord.py

如果你不想 go 和 wait_for,你真的應該使用字典。

import discord
import os
client = discord.Client()
some_dict = {}
msg = None

    
@client.event
async def on_ready():
    print('We have logged in as {0.user}'.format(client))
@client.event
async def on_message(message):
  if message.author == client.user:
    return
  msg = await message.channel.send("**Question 1?**")
  reactions = ['1️⃣','2️⃣','3️⃣','4️⃣']
  for emoji in reactions: 
    await msg.add_reaction(emoji)
@client.event
async def on_reaction_add(reaction, user):
    if reaction.message == msg:
        some_dict[user.id] = str(reaction.emoji)
client.run("token")

然后您可以使用some_dict[user.id]訪問它

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM