使用命令的时间限制

Time limit for using commands

我正在使用 JDA 编写一个机器人。

我已经写了几个命令,我想做的是让用户只能调用一次命令,然后他必须等待,比如说,5秒才能再次使用它。 我尝试使用 java.util.concurrent.TimeUnit 库来做到这一点。 但问题是,在这 5 秒后,机器人开始响应我在命令未调用期间发送的消息。

而且有必要让他只回复几次,而忽略后续的同类消息。

如需源码,请在评论区留言。 提前谢谢你,祝你好运,没有错误。

你把它搞得越来越复杂了,解决办法要简单得多。每当用户执行命令时,只需存储一个时间戳。如果用户发送另一个命令,将当前时间戳与上一个命令进行比较,如果在 5 秒内出现,则忽略 command.You 可以根据您的要求为每个用户、每个命令或两者存储时间戳。