Java Discord Api 移动用户
Java Discord Api Moving users
我正忙于 Java Discord Api 的 Discord 机器人。
如果它不起作用或它是一个错误,我有点陷入困境。我想将人们转移到语音频道。但是在某个地方,代码没有更进一步,也没有 return 来自编译器的异常或中断事件 / ide.
@Override
public boolean called(String[] args, MessageReceivedEvent event)
{
if(args.length < 2 || event.getMessage().getMentionedUsers().size() < 1 || Permissions.GetPermissions(event) == 0)
{
System.out.print("you dont have the permissions");
return false;
}
boolean channelexists = false;
boolean userexists = false;
for(VoiceChannel channel : event.getGuild().getVoiceChannels())
{
if(channel.getName().equalsIgnoreCase(args[1]))
{
System.out.print("found ---> " + channel.getName() + "\n");
channelexists = true;
break;
}
}
for(VoiceChannel channel : event.getGuild().getVoiceChannels())
{
if(channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0)))
{
System.out.print("found ---> " + channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0).getName()) + "\n");
userexists = true;
break;
}
}
return channelexists && userexists;
}
@Override
public void action(String[] args, MessageReceivedEvent event)
{
GuildController controller = new GuildController(event.getGuild());
VoiceChannel voicechannel = null;
for(VoiceChannel channel : event.getGuild().getVoiceChannels())
{
if(channel.getName().equalsIgnoreCase(args[1]))
{
voicechannel = channel;
break;
}
}
try
{
controller.moveVoiceMember((Member) event.getMessage().getMentionedUsers().get(0), voicechannel);
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
包含打印行的行似乎没有触发。
System.out.print("found ---> " + channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0).getName()) + "\n");
但是当我这样调试时
System.out.print(channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0)));
控制台显示错误。甚至当我在其中一个频道时。
所以我有点烦,如果它是一个错误或者我只是愚蠢。
感谢我的帮助和问候!
System.out.print(channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0)));
the console writes false.
相同的值被用作 if
控件中的条件,并且由于 if
条件的计算结果为 false
,很明显 if
(在您的查询中,打印行)不会被执行。因此包含打印行的行似乎没有触发。
我正忙于 Java Discord Api 的 Discord 机器人。
如果它不起作用或它是一个错误,我有点陷入困境。我想将人们转移到语音频道。但是在某个地方,代码没有更进一步,也没有 return 来自编译器的异常或中断事件 / ide.
@Override
public boolean called(String[] args, MessageReceivedEvent event)
{
if(args.length < 2 || event.getMessage().getMentionedUsers().size() < 1 || Permissions.GetPermissions(event) == 0)
{
System.out.print("you dont have the permissions");
return false;
}
boolean channelexists = false;
boolean userexists = false;
for(VoiceChannel channel : event.getGuild().getVoiceChannels())
{
if(channel.getName().equalsIgnoreCase(args[1]))
{
System.out.print("found ---> " + channel.getName() + "\n");
channelexists = true;
break;
}
}
for(VoiceChannel channel : event.getGuild().getVoiceChannels())
{
if(channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0)))
{
System.out.print("found ---> " + channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0).getName()) + "\n");
userexists = true;
break;
}
}
return channelexists && userexists;
}
@Override
public void action(String[] args, MessageReceivedEvent event)
{
GuildController controller = new GuildController(event.getGuild());
VoiceChannel voicechannel = null;
for(VoiceChannel channel : event.getGuild().getVoiceChannels())
{
if(channel.getName().equalsIgnoreCase(args[1]))
{
voicechannel = channel;
break;
}
}
try
{
controller.moveVoiceMember((Member) event.getMessage().getMentionedUsers().get(0), voicechannel);
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
包含打印行的行似乎没有触发。
System.out.print("found ---> " + channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0).getName()) + "\n");
但是当我这样调试时
System.out.print(channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0)));
控制台显示错误。甚至当我在其中一个频道时。
所以我有点烦,如果它是一个错误或者我只是愚蠢。
感谢我的帮助和问候!
System.out.print(channel.getMembers().contains(event.getMessage().getMentionedUsers().get(0)));
the console writes false.
相同的值被用作 if
控件中的条件,并且由于 if
条件的计算结果为 false
,很明显 if
(在您的查询中,打印行)不会被执行。因此包含打印行的行似乎没有触发。