Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Dismiss Notice

Помогите Простая ошибка в плагине

Discussion in 'Разработка плагинов для новичков' started by Alex Sampov, Apr 29, 2019.

  1. Автор темы
    Alex Sampov

    Alex Sampov Новичок Пользователь

    Trophy Points:
    6
    Всем привет, пишу плагин на сообщения в чат при нажатии на стекло в gui.
    Вот код
    Code:
        @Override
        public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
        
         Player p = (Player) sender;
         Inventory i = holders.get(p);
         if(i == null)
         {
            
             i = Bukkit.createInventory(null, 3 * 9, ChatColor.BLUE + "Сообщение в чат");
             holders.put(p, i);
            
            
         }
             if(cmd.getName().equalsIgnoreCase("amsg")){ //
                // String s = plugin.getConfig().getString("amessage.one");
                 //s = s.replace("&", "\u00a7");
                 //Bukkit.broadcastMessage(s);
             ItemStack item = new ItemStack(Material.STAINED_GLASS_PANE);
             SkullMeta meta = (SkullMeta) item.getItemMeta();
             meta.setDisplayName(ChatColor.GREEN + sender.getName() + " пришел к вам в гости");
             meta.setLore(Lists.newArrayList(ChatColor.GREEN + sender.getName() + " пришел к вам в гости"));
             item.setItemMeta(meta);
            
             i.setItem(4, item);
             p.openInventory(i);
            
         }   
        return true;
        
        
     }
        @EventHandler
        public void onClose(InventoryCloseEvent e)
        {
            
          holders.remove(e.getPlayer());   
            
        }
        
        
        
        
        @EventHandler
        public void handle(InventoryClickEvent e)
        {
            
          Inventory i = holders.get(e.getWhoClicked());
          if(i == null) return;
          
          e.setCancelled(true);
          if(i.equals(e.getClickedInventory()) && e.getSlot() == 4)
          {
              ItemStack item = i.getItem(4);
              ItemMeta meta = item.getItemMeta();
              i.setItem(4, item);
              Bukkit.broadcastMessage(ChatColor.GREEN + getName() + " пришел к вам в гости");
              
          }
            
        }
    И выдает такую ошибку:
    Code:
    [17:04:38 ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'amsg' in plugin AstudioDonaterMessage v1.0
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[server.jar:git-Spigot-e4d4710-e1ebe52]
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[server.jar:git-Spigot-e4d4710-e1ebe52]
            at org.bukkit.craftbukkit.v1_8_R3.CraftServer.dispatchCommand(CraftServer.java:641) ~[server.jar:git-Spigot-e4d4710-e1ebe52]
            at net.minecraft.server.v1_8_R3.PlayerConnection.handleCommand(PlayerConnection.java:1162) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:997) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:45) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:1) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_201]
            at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_201]
            at net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:715) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [server.jar:git-Spigot-e4d4710-e1ebe52]
            at java.lang.Thread.run(Unknown Source) [?:1.8.0_201]
    Caused by: java.lang.ClassCastException: org.bukkit.craftbukkit.v1_8_R3.inventory.CraftMetaItem cannot be cast to org.bukkit.inventory.meta.SkullMeta
            at com.zhekablack.Manager.onCommand(Manager.java:91) ~[?:?]
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[server.jar:git-Spigot-e4d4710-e1ebe52]
            ... 15 more
     
  2. Хостинг MineCraft
    <
  3. Автор темы
    Alex Sampov

    Alex Sampov Новичок Пользователь

    Trophy Points:
    6
    уже решил
     

Share This Page