Plugins 在minecraft上的插件中发送错误消息的代码
我正在开发插件,但当玩家在游戏中执行命令时,“发送者”会发送四条相同的消息Plugins 在minecraft上的插件中发送错误消息的代码,plugins,minecraft,Plugins,Minecraft,我正在开发插件,但当玩家在游戏中执行命令时,“发送者”会发送四条相同的消息 @EventHandler public void oncmd(PlayerCommandEvent预处理){ 列表块=数组。asList(“:”); block.forEach(全部->{ 如果(e.getMessage().toLowerCase().contains)(all.toLowerCase()){ e、 getPlayer().sendMessage(§8[§系统§8]§cYou不能使用此命令!”);
@EventHandler
public void oncmd(PlayerCommandEvent预处理){
列表块=数组。asList(“:”);
block.forEach(全部->{
如果(e.getMessage().toLowerCase().contains)(all.toLowerCase()){
e、 getPlayer().sendMessage(§8[§系统§8]§cYou不能使用此命令!”);
e、 setCancelled(真);
}
});
}
您可以使用不允许的字符创建字符数组。之后,您可以使用一个简单的for循环来迭代所有元素。在此循环内部,您现在可以检查命令是否包含此字符。使用for each循环,而不是调用forEach
函数。这将允许您添加一个break
语句,该语句将在找到第一个坏字符后结束循环:
@EventHandler
public void oncmd(PlayerCommandPreprocessEvent e) {
List<String> block = Arrays.asList(":");
for(String all : block) {
if(e.getMessage().toLowerCase().contains(all.toLowerCase())) {
e.getPlayer().sendMessage("§8[§aSystem§8] §cYou can't use this command!");
e.setCancelled(true);
break;
}
}
}
@EventHandler
public void oncmd(PlayerCommandPreprocessEvent e) {
List<String> block = Arrays.asList(":");
for(String all : block) {
if(e.getMessage().toLowerCase().contains(all.toLowerCase())) {
e.getPlayer().sendMessage("§8[§aSystem§8] §cYou can't use this command!");
e.setCancelled(true);
break;
}
}
}
@EventHandler
public void oncmd(PlayerCommandPreprocessEvent e) {
List<String> block = Arrays.asList(":");
if(block.stream().anyMatch(all -> e.getMessage().toLowerCase().contains(all.toLowerCase()))) {
e.getPlayer().sendMessage("§8[§aSystem§8] §cYou can't use this command!");
e.setCancelled(true);
}
}