ServerPlugin Bei mir wird kein Inventory erstellt

Dieses Thema im Forum "Programmierung" wurde erstellt von Lentry, 16. Juni 2016.

  1. Lentry
    Offline

    Lentry

    Registriert seit:
    15. Mai 2016
    Beiträge:
    39
    Hallo,
    Ich möchte ein Plugin Schreiben wo man auf eine Chest auf klickt und dan auf ein Mosteregg drauf killt und da noch ein Inventory erstllt soll

    Code (Javascript):
    1. package LobbyItems;
    2.  
    3. import org.bukkit.Bukkit;
    4. import org.bukkit.Material;
    5. import org.bukkit.entity.Player;
    6. import org.bukkit.event.EventHandler;
    7. import org.bukkit.event.Listener;
    8. import org.bukkit.event.block.Action;
    9. import org.bukkit.event.inventory.InventoryClickEvent;
    10. import org.bukkit.event.player.PlayerInteractEvent;
    11. import org.bukkit.inventory.Inventory;
    12. import org.bukkit.inventory.ItemStack;
    13. import org.bukkit.inventory.meta.ItemMeta;
    14.  
    15. public class Gadgets implements Listener {
    16.    
    17.    
    18.    
    19.     @SuppressWarnings("unused")
    20.     private main plugin;
    21.  
    22.     public Gadgets(main plugin) {
    23.       this.plugin = plugin;
    24.     }
    25. @EventHandler
    26. public void onCompas(PlayerInteractEvent e) {
    27.     Player p = e.getPlayer();
    28.    
    29.     if(e.getAction() == Action.RIGHT_CLICK_AIR || e.getAction() == Action.RIGHT_CLICK_BLOCK ) {
    30.        
    31.         try {
    32.         if(e.getItem().getItemMeta().getDisplayName().equalsIgnoreCase("§aGadgets")) {
    33.             Inventory gadgets = Bukkit.createInventory(null, 27, "§aGadgets");
    34.            
    35.             ItemStack Haustiere = new ItemStack(Material.MONSTER_EGG);
    36.             ItemMeta Haustieremeta = Haustiere.getItemMeta();
    37.             Haustieremeta.setDisplayName("§aHaustiere");
    38.             Haustiere.setItemMeta(Haustieremeta);
    39.    
    40.             ItemStack kleidung = new ItemStack(Material.IRON_CHESTPLATE);
    41.             ItemMeta kleidungmeata = kleidung.getItemMeta();
    42.             kleidungmeata.setDisplayName("§6Kleidung");
    43.             kleidung.setItemMeta(kleidungmeata);
    44.            
    45.             ItemStack spuren = new ItemStack(Material.REDSTONE);
    46.             ItemMeta spurenmeta = spuren.getItemMeta();
    47.             spurenmeta.setDisplayName("§bSpuren");
    48.             spuren.setItemMeta(spurenmeta);
    49.          
    50.            
    51.             gadgets.setItem(10, Haustiere);
    52.             gadgets.setItem(13, kleidung);
    53.             gadgets.setItem(16, spuren);
    54.            
    55.             p.openInventory(gadgets);
    56.            
    57.         }
    58.        
    59.        
    60.         } catch (Exception ex) {
    61.            
    62.         }
    63.     }
    64. }
    65.  
    66.  
    67.  
    68.     @EventHandler
    69.     public void onClickEvnt(InventoryClickEvent e) {
    70.         try {
    71.             e.setCancelled(true);
    72.            
    73.             if(e.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§aGadgets")) {
    74.                 e.setCancelled(true);
    75.             }
    76.         } catch (Exception ex) {
    77.            
    78.         }
    79.     }
    80.  
    81.     @EventHandler
    82.     public void onClick(InventoryClickEvent e) {
    83.         Player p = (Player) e.getWhoClicked();
    84.        
    85.         if(e.getInventory().getName().equalsIgnoreCase("§aGadgets")) {
    86.            
    87.             try {
    88.  
    89.                 if (e.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§aHaustiere")) {
    90.            
    91.                    
    92.                     e.getView().close();
    93.                     try {
    94.                    
    95.                      Inventory hausgad = Bukkit.createInventory(null, 5, "§aGadgets");
    96.                    
    97.                     ItemStack wolf = new ItemStack(Material.MONSTER_EGG);
    98.                     ItemMeta wolfm = wolf.getItemMeta();
    99.                     wolfm.setDisplayName("§aWolf");
    100.                     wolf.setItemMeta(wolfm);
    101.                    
    102.                     hausgad.setItem(5, wolf);
    103.                     } catch (Exception ex ) {
    104.                        
    105.                     }
    106.                 }
    107.                
    108.                 if (e.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§6Kleidung")) {
    109.                    
    110.                     Bukkit.getServer().dispatchCommand(p, "warp Spawn");
    111.  
    112.                         e.getView().close();
    113.                 }
    114.                
    115.               if (e.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§bSpuren")) {
    116.                    
    117.                     Bukkit.getServer().dispatchCommand(p, "warp GroundPvP");
    118.  
    119.                         e.getView().close();
    120.                 }
    121.                
    122.             } catch (Exception ex) {
    123.                
    124.             }
    125.         }
    126.     }
    127.    
    128.    
    129.    
    130. }
    131.  
    LG MTRX
     
    #1
  2. jensIO
    Offline

    jensIO

    Registriert seit:
    28. Juli 2015
    Beiträge:
    602
    Ort:
    Internet, im Neuland
    Minecraft:
    jens1o
    Mache deine Try Catch Blöcke mal kurz raus, und schaue ob du irgendeinen Fehler bekommst.

    Außerdem ist es sinnlos, Exception abzufangen, aber nichts damit zu machen.
     
    #2
  3. Lentry
    Offline

    Lentry

    Registriert seit:
    15. Mai 2016
    Beiträge:
    39
    Der Fehler kommt
    Code (Javascript):
    1. [14:16:38 ERROR]: Could not pass event InventoryClickEvent to LobbyItems v1.0
    2. org.bukkit.event.EventException
    3.         at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:305) ~[spigot.jar:git-Spigot-550ebac-7019900]
    4.         at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[spigot.jar:git-Spigot-550ebac-7019900]
    5.         at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [spigot.jar:git-Spigot-550ebac-7019900]
    6.         at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [spigot.jar:git-Spigot-550ebac-7019900]
    7.         at net.minecraft.server.v1_8_R1.PlayerConnection.a(PlayerConnection.java:1588) [spigot.jar:git-Spigot-550ebac-7019900]
    8.         at net.minecraft.server.v1_8_R1.PacketPlayInWindowClick.a(SourceFile:31) [spigot.jar:git-Spigot-550ebac-7019900]
    9.         at net.minecraft.server.v1_8_R1.PacketPlayInWindowClick.a(SourceFile:9) [spigot.jar:git-Spigot-550ebac-7019900]
    10.         at net.minecraft.server.v1_8_R1.PacketHandleTask.run(SourceFile:13) [spigot.jar:git-Spigot-550ebac-7019900]
    11.         at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_92]
    12.         at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_92]
    13.         at net.minecraft.server.v1_8_R1.MinecraftServer.z(MinecraftServer.java:696) [spigot.jar:git-Spigot-550ebac-7019900]
    14.         at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:316) [spigot.jar:git-Spigot-550ebac-7019900]
    15.         at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:634) [spigot.jar:git-Spigot-550ebac-7019900]
    16.         at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:537) [spigot.jar:git-Spigot-550ebac-7019900]
    17.         at java.lang.Thread.run(Unknown Source) [?:1.8.0_92]
    18. Caused by: java.lang.NullPointerException
    19.         at LobbyItems.Gadgets.onClick(Gadgets.java:89) ~[?:?]
    20.         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_92]
    21.         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_92]
    22.         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_92]
    23.         at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_92]
    24.         at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:301) ~[spigot.jar:git-Spigot-550ebac-7019900]
    25.         ... 14 more
    26. [14:16:39 ERROR]: Could not pass event InventoryClickEvent to LobbyItems v1.0
    27. org.bukkit.event.EventException
    28.         at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:305) ~[spigot.jar:git-Spigot-550ebac-7019900]
    29.         at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[spigot.jar:git-Spigot-550ebac-7019900]
    30.         at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [spigot.jar:git-Spigot-550ebac-7019900]
    31.         at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [spigot.jar:git-Spigot-550ebac-7019900]
    32.         at net.minecraft.server.v1_8_R1.PlayerConnection.a(PlayerConnection.java:1588) [spigot.jar:git-Spigot-550ebac-7019900]
    33.         at net.minecraft.server.v1_8_R1.PacketPlayInWindowClick.a(SourceFile:31) [spigot.jar:git-Spigot-550ebac-7019900]
    34.         at net.minecraft.server.v1_8_R1.PacketPlayInWindowClick.a(SourceFile:9) [spigot.jar:git-Spigot-550ebac-7019900]
    35.         at net.minecraft.server.v1_8_R1.PacketHandleTask.run(SourceFile:13) [spigot.jar:git-Spigot-550ebac-7019900]
    36.         at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_92]
    37.         at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_92]
    38.         at net.minecraft.server.v1_8_R1.MinecraftServer.z(MinecraftServer.java:696) [spigot.jar:git-Spigot-550ebac-7019900]
    39.         at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:316) [spigot.jar:git-Spigot-550ebac-7019900]
    40.         at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:634) [spigot.jar:git-Spigot-550ebac-7019900]
    41.         at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:537) [spigot.jar:git-Spigot-550ebac-7019900]
    42.         at java.lang.Thread.run(Unknown Source) [?:1.8.0_92]
    43. Caused by: java.lang.IllegalArgumentException: Chests must have a size that is a multiple of 9!
    44.         at org.apache.commons.lang.Validate.isTrue(Validate.java:136) ~[spigot.jar:git-Spigot-550ebac-7019900]
    45.         at org.bukkit.craftbukkit.v1_8_R1.CraftServer.createInventory(CraftServer.java:1515) ~[spigot.jar:git-Spigot-550ebac-7019900]
    46.         at org.bukkit.Bukkit.createInventory(Bukkit.java:934) ~[spigot.jar:git-Spigot-550ebac-7019900]
    47.         at LobbyItems.Gadgets.onClick(Gadgets.java:95) ~[?:?]
    48.         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_92]
    49.         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_92]
    50.         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_92]
    51.         at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_92]
    52.         at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:301) ~[spigot.jar:git-Spigot-550ebac-7019900]
    53.         ... 14 more
    54. >
     
    #3
  4. jensIO
    Offline

    jensIO

    Registriert seit:
    28. Juli 2015
    Beiträge:
    602
    Ort:
    Internet, im Neuland
    Minecraft:
    jens1o
    Irgendetwas was du haben willst ist null(in der Datei Gadgets.java in der Zeile 89). Was steht da für Code?
     
    #4
  5. Lentry
    Offline

    Lentry

    Registriert seit:
    15. Mai 2016
    Beiträge:
    39
    Der Code
    Code (Text):
    1. @EventHandler
    2.     public void onClick(InventoryClickEvent e) {
    3.         Player p = (Player) e.getWhoClicked();
    4.        
    5.         if(e.getInventory().getName().equalsIgnoreCase("§aGadgets")) {
    6.            
    7.    
    8.  
    9.                 if (e.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§aHaustiere")) {
    10.            
    11.                    
    12.          
    13.            
    14.                    
    15.                     // Inventory hausgad = Bukkit.createInventory(null, 5, "§aGadgets");
    16.                    
    17.                     Inventory hausgad = Bukkit.createInventory(null, 5, "test01");
    18.                    
    19.                     ItemStack wolf = new ItemStack(Material.MONSTER_EGG);
    20.                     ItemMeta wolfm = wolf.getItemMeta();
    21.                     wolfm.setDisplayName("§aWolf");
    22.                     wolf.setItemMeta(wolfm);
    23.                    
    24.                     hausgad.setItem(5, wolf);
    25.                
    26.                 }
    27.                
    28.                 if (e.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§6Kleidung")) {
    29.                    
    30.                     Bukkit.getServer().dispatchCommand(p, "warp Spawn");
    31.  
    32.                         e.getView().close();
    33.                 }
    34.                
    35.               if (e.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§bSpuren")) {
    36.                    
    37.                     Bukkit.getServer().dispatchCommand(p, "warp GroundPvP");
    38.  
    39.                         e.getView().close();
    40.                 }
    41.                
    42.            
    43.         }
    44.     }
    45.    
    46.    
     
    #5
  6. Verschraubt
    Offline

    Verschraubt


    Wow
     
    #6
    jensIO gefällt das.
  7. Lentry
    Offline

    Lentry

    Registriert seit:
    15. Mai 2016
    Beiträge:
    39
    Ich hab schon den bag gefunden habe vergessen das Inv zu offnen zu lasen aber danke.
     
    #7
  8. jensIO
    Offline

    jensIO

    Registriert seit:
    28. Juli 2015
    Beiträge:
    602
    Ort:
    Internet, im Neuland
    Minecraft:
    jens1o
    Bitte, nächstes Mal aber auch das posten, was andere brauchen.
     
    #8