Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Discord.py-rewrite wait_for() how do i use?

I can not really use wait_if () the way I want it, can anyone explain how to use wait_for ('message') and wait_for ('reaction'), only by the user of the command? (message translated by Google Translate, forgive me for any error...)

like image 681
Shiba Luck Avatar asked Sep 29 '18 19:09

Shiba Luck


1 Answers

wait_for takes a check argument that is a function that takes the arguments of the event you're waiting for and determines whether or not that is the event you're waiting for.

For example, the on_message event takes a message argument, so if we wanted to check the author of a message we could do:

msg = await client.wait_for('message', check=lambda message: message.author == ctx.author)

to see that the new message comes from the same person who invoked the currently running command.

If we wanted to send a message to the next person to react with a certain emoji, we could do

reaction, user = await client.wait_for('reaction_add', 
                                       check=lambda reaction, user: reaction.emoji == '👍')
await user.send("👍 to you too!")
like image 137
Patrick Haugh Avatar answered Nov 03 '22 20:11

Patrick Haugh