Java Eclipse插件Bukkit
我对编码非常陌生,我似乎无法找出为什么我的工作中会出现语法错误。它说:语法错误,插入“}”以完成类主体。这是我的密码:Java Eclipse插件Bukkit,java,bukkit,Java,Bukkit,我对编码非常陌生,我似乎无法找出为什么我的工作中会出现语法错误。它说:语法错误,插入“}”以完成类主体。这是我的密码: package me.koda; import org.bukkit.ChatColor; import org.bukkit.Material; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org
package me.koda;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.block.BlockPlaceEvent;
public class BlockListener implements Listener {
public BlockListener(AntiBlock plugin) {
plugin.getServer().getPluginManager().registerEvents(this, plugin);
}
@EventHandler
public void onBlockPlace(BlockPlaceEvent e) {
Player player = e.getPlayer();
if (!player.hasPermission("playerAbilities.allowed")) {
player.sendMessage(ChatColor.RED + "You, " + ChatColor.GOLD + player.getName() + ChatColor.RED + " Cant Place Blocks!");
e.setCancelled(true);
}
}
@EventHandler
public void onBlockBreak(BlockBreakEvent e) {
Player player = e.getPlayer();
if (!player.hasPermission("playerAbilities.allowed")) {
}
{
player.sendMessage(ChatColor.RED + "You, " + ChatColor.GOLD + player.getName() + ChatColor.RED + " Cant Break Blocks!");
e.setCancelled(true);
}
} // <-- this one
@EventHandler
public void onBedrockPlace(BlockPlaceEvent e) {
Player player = e.getPlayer();
if(e.getBlock().getType() == Material.BEDROCK) {
if (!player.hasPermission("playerAbilities.allowed")) {
player.sendMessage(ChatColor.RED + "You Cannot Place " + e.getBlock().getType().toString() + " Down!");
e.setCancelled(true);
} else player.sendMessage(ChatColor.GREEN + "You May Place " + e.getBlock().getType().toString() + " Down!");
player.sendMessage(ChatColor.RED + "You, " + ChatColor.GOLD + player.getName() + ChatColor.RED + " Cant Place Blocks!");
e.setCancelled(true);
} // <--- this one
package me.koda;
导入org.bukkit.ChatColor;
导入org.bukkit.Material;
导入org.bukkit.entity.Player;
导入org.bukkit.event.EventHandler;
导入org.bukkit.event.Listener;
导入org.bukkit.event.block.BlockBreakEvent;
导入org.bukkit.event.block.BlockPlaceEvent;
公共类BlockListener实现侦听器{
公共块侦听器(反块插件){
plugin.getServer().getPluginManager().registerEvents(此插件);
}
@事件处理程序
BlockPlace上的公共作废(BlockPlace事件e){
Player=e.getPlayer();
如果(!player.hasPermission(“playerAbilities.allowed”)){
发送消息(ChatColor.RED+“你,”+ChatColor.GOLD+player.getName()+ChatColor.RED+“不能放置块!”);
e、 setCancelled(真);
}
}
@事件处理程序
BlockBreak上的公共无效(BlockBreak事件e){
Player=e.getPlayer();
如果(!player.hasPermission(“playerAbilities.allowed”)){
}
{
发送消息(ChatColor.RED+“你,”+ChatColor.GOLD+player.getName()+ChatColor.RED+“不能断块!”);
e、 setCancelled(真);
}
}//大括号有几个问题,所以我修复了代码:
package me.koda;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.block.BlockPlaceEvent;
public class BlockListener implements Listener {
public BlockListener(AntiBlock plugin) {
plugin.getServer().getPluginManager().registerEvents(this, plugin);
}
@EventHandler
public void onBlockPlace(BlockPlaceEvent e) {
Player player = e.getPlayer();
if (!player.hasPermission("playerAbilities.allowed")) {
player.sendMessage(ChatColor.RED + "You, " + ChatColor.GOLD + player.getName() + ChatColor.RED + " Cant Place Blocks!");
e.setCancelled(true);
}
}
@EventHandler
public void onBlockBreak(BlockBreakEvent e) {
Player player = e.getPlayer();
if (!player.hasPermission("playerAbilities.allowed")) {
}
player.sendMessage(ChatColor.RED + "You, " + ChatColor.GOLD + player.getName() + ChatColor.RED + " Cant Break Blocks!");
e.setCancelled(true);
}
@EventHandler
public void onBedrockPlace(BlockPlaceEvent e) {
Player player = e.getPlayer();
if(e.getBlock().getType() == Material.BEDROCK) {
if (!player.hasPermission("playerAbilities.allowed")) {
player.sendMessage(ChatColor.RED + "You Cannot Place " + e.getBlock().getType().toString() + " Down!");
e.setCancelled(true);
} else {
player.sendMessage(ChatColor.GREEN + "You May Place " + e.getBlock().getType().toString() + " Down!");
}
player.sendMessage(ChatColor.RED + "You, " + ChatColor.GOLD + player.getName() + ChatColor.RED + " Cant Place Blocks!");
e.setCancelled(true);
}
}
}
将您的代码与此进行比较,您会发现问题所在。每个开始大括号都需要一个结束大括号。只要数一数,您就会发现缺少两个大括号。(顺便说一句,这就是为什么人们对编码样式很挑剔的原因;如果您知道大括号应该放在哪里,那么判断大括号是否缺少就容易多了。)在学习第三方API之前先学习java