【发布时间】:2020-08-25 09:23:48
【问题描述】:
我正在使用 discord-jda 创建一个 discord 机器人,我想创建一个 eval 命令,使用 discord 服务器中的消息执行代码,该怎么做?
【问题讨论】:
-
你能举一个应该执行的输入eval命令的例子吗?
标签: java discord discord-jda
我正在使用 discord-jda 创建一个 discord 机器人,我想创建一个 eval 命令,使用 discord 服务器中的消息执行代码,该怎么做?
【问题讨论】:
标签: java discord discord-jda
要从聊天中读取消息,您需要一个 EventListener
public class Test implements EventListener {
@Override
public void onEvent(GenericEvent event){
//First you check if this event is whatever event you're listening for
if(event instanceof MessageReceivedEvent){
//Do whatever
//Note that you can cast that event here, since it 100% is a MessageReceivedEvent
MessageReceivedEvent messageReceivedEvent = (MessageReceivedEvent) event;
//Or to operate directly
TextChannel channel = ((MessageReceivedEvent)event).getChannel();
}
}
}
你可以在这里找到https://github.com/DV8FromTheWorld/JDA/wiki/1)-Events
然后您可以使用基本的 java 来处理该事件并执行您想要的任何操作,之后如果您想发回东西,您需要引用 TextChannel(MessageReceivedEvent 有 getChannel() 方法,这很方便) 你可以在上面使用sendMessage()。
请注意,这只是让您走上正轨的概述。很难仅根据您的要求提供更具体的信息,如果您使用更多信息编辑答案,我也很乐意在此处更新。
【讨论】: