TransWikia.com

Как использовать переменные в discord.py

Stack Overflow на русском Asked by Athreem on December 22, 2021

Хочу сделать бота для мини игры в дискорде, но проблема в том как передавать переменные для команд библиотеки discord.
Например в коде ниже я хочу "заблокировать" команду start после её активации, но т.к сама функция выполняется "вне" программы я не могу сделать проверку за счёт переменной nRound.

Как вообще взаимодействовать с переменами из "вне" в функциях async, если в async функции происходит расчёт, а потом мне нужно эти расчёты сравнить.

import discord
from discord.ext import commands

TOKEN = '123'
bot = commands.Bot(command_prefix='!')
nRound = 0

@bot.command(pass_context=False)
async def start(ctx):
    if nRound == 0:
        nRound = 1
        await ctx.send("123")
    else:
        print("Игра началась. Чтобы начать новую игру завершите текущую.")

One Answer

как вообще взаимодействовать с переменами из "вне" в функциях

Как обычно - с помощью ключевого слова global :

@bot.command(pass_context=False)
async def start(ctx):
    global nRound

Answered by Sergey on December 22, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP