PDA

Просмотр полной версии : дискорд стоп функция


TopCarl
30.04.2023, 21:29
написал небольшого бота в дискорде чтобы флудил чат с активацией на команду, но хотелось бы узнать как останавливать это тоже с помощью команды

1:






@client.command()
async def popka(ctx):
for i in range(2000000):
guild = ctx.message.guild
await ctx.channel.send("flood text")

VRush
30.04.2023, 21:45
делаешь команду /stop:

stop = True

Python:






@client.command
(
)
async
def
popka
(
ctx
)
:
for
i
in
range
(
2000000
)
:
if
stop
:
wait ctx
.
channel
.
send
(
"flood stoped"
)
return
guild
=
ctx
.
message
.
guild
await
ctx
.
channel
.
send
(
"flood text"
)

TopCarl
30.04.2023, 22:02
делаешь команду /stop:
stop = True

Python:






@client.command
(
)
async
def
popka
(
ctx
)
:
for
i
in
range
(
2000000
)
:
if
stop
:
wait ctx
.
channel
.
send
(
"flood stoped"
)
return
guild
=
ctx
.
message
.
guild
await
ctx
.
channel
.
send
(
"flood text"
)





немного не понял зачем мне два раза flood text

chromiusj
30.04.2023, 22:06
Python:






is_flooding
=
False
@client.command
(
)
async
def
popka
(
ctx
)
:
global
is_flooding
is_flooding
=
True
while
is_flooding
:
guild
=
ctx
.
message
.
guild
await
ctx
.
channel
.
send
(
"flood text"
)
@client.command
(
)
async
def
stop
(
ctx
)
:
global
is_flooding
is_flooding
=
False




где нибудь объявляешь переменную флуда да и все