【问题标题】:Discord.py Daily bonus help neededDiscord.py 需要每日奖励帮助
【发布时间】:2018-11-28 18:54:21
【问题描述】:

所以,我想像你一样为我的机器人赚取每日奖励:

*dailybonus

它会给你的余额增加大约 5 个硬币。

但是,我希望它每天只执行一次,我知道我需要使用 json,但我不知道我还需要做什么。

如果有人可以举个例子,那将不胜感激!

【问题讨论】:

    标签: python discord.py


    【解决方案1】:

    您可以使用commands.cooldown 修饰您的命令,只允许用户每 24 小时调用一次。

    @bot.command(pass_context=True)
    @commands.cooldown(1, 60*60*24, commands.BucketType.user)
    async def dailybonus:
       ...
    

    因此,如果用户调用dailybonus,则在 24 小时内不允许再次调用它。

    【讨论】:

    • 特定于该用户而不是每个人?
    • 是的。 BucketType 枚举决定了冷却适用于哪个类别(每个用户、每个频道、每个公会或全局)。
    • 错误:文件“”,第 1 行,在 文件“/home/zorin/Desktop/den.py”,第 112 行,在 @commands.cooldown( 1, 60*60*24, commands.BucketType.User) File "/usr/local/lib/python3.6/enum.py", line 324, in getattr raise AttributeError(name) from无 AttributeError:用户
    • BucketType.user 不是BucketType.User
    • 另外,我有这个:await bot.say("You have {} Countertop Tokens in the bank".format(amounts[ctx.message.author.id]))会把它变成一个嵌入。
    猜你喜欢
    • 2018-10-10
    • 2011-07-19
    • 2020-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多