1. Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Fehler mit PlayerInteractEvent

Dieses Thema im Forum "Programmierung" wurde erstellt von GermanCrazyCraft, 5. Mai 2014.


  1. GermanCrazyCraft
    Offline

    GermanCrazyCraft

    Registriert seit:
    25. Februar 2013
    Beiträge:
    19
    Minecraft:
    Nico2705
    Hallo liebe Community;
    ich will ein PlayerInteractEvent abfangen, was auch klappt aber immer wenn ich nur in die Luft schlage kommt ne Fehler meldung:

    Code:
    Code (Text):
    1. package de.bagpack;
    2.  
    3. import org.bukkit.Material;
    4. import org.bukkit.Sound;
    5. import org.bukkit.entity.Player;
    6. import org.bukkit.event.EventHandler;
    7. import org.bukkit.event.EventPriority;
    8. import org.bukkit.event.Listener;
    9. import org.bukkit.event.block.Action;
    10. import org.bukkit.event.player.PlayerInteractEvent;
    11.  
    12. public class UseBagPack implements Listener {
    13.    
    14.     @EventHandler(priority = EventPriority.LOW)
    15.     public void PlayerClick(PlayerInteractEvent e){
    16.        
    17.         Action action = e.getAction();
    18.         Player p = e.getPlayer();
    19.        
    20.         if(action.equals(Action.RIGHT_CLICK_AIR)){
    21.             if(p.getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§3Rucksack") && (p.getItemInHand().getType() == Material.ENDER_CHEST)){
    22.                 p.playSound(p.getLocation(), Sound.HORSE_SADDLE, 10, 1);
    23.                 p.openInventory(p.getEnderChest());
    24.                 return;
    25.             }
    26.         }
    27.     }
    28. }
    Fehler:

    Code (Text):
    1. [14:48:57 ERROR]: Could not pass event PlayerInteractEvent to RPGAPI2014 v0.2
    2. org.bukkit.event.EventException
    3. >       at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:320) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    4. >       at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    5. >       at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:486) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    6. >       at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:471) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    7. >       at org.bukkit.craftbukkit.v1_7_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:195) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    8. >       at org.bukkit.craftbukkit.v1_7_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:165) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    9. >       at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java:604) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    10. >       at net.minecraft.server.v1_7_R1.PacketPlayInBlockPlace.a(SourceFile:60) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    11. >       at net.minecraft.server.v1_7_R1.PacketPlayInBlockPlace.handle(SourceFile:9) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    12. >       at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:146) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    13. >       at net.minecraft.server.v1_7_R1.ServerConnection.c(SourceFile:134) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    14. >       at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:655) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    15. >       at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:250) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    16. >       at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:545) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    17. >       at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:457) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    18. >       at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    19. Caused by: java.lang.NullPointerException
    20. >       at de.bagpack.UseBagPack.PlayerClick(UseBagPack.java:21) ~[?:?]
    21. >       at sun.reflect.GeneratedMethodAccessor46.invoke(Unknown Source) ~[?:?]
    22. >       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_51]
    23. >       at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_51]
    24. >       at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:318) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    25. >       ... 15 more
    26.  
    Kann mir bitte wer helfen? Über Verbesserungsvorschläge wäre ich sehr erfreut!
    Danke im Vorraus :)
    Mfg Nico
     
  2. Werbung
    Online

    Werbung

  3. games6471
    Online

    games6471

    Bist du dir sicher, dass der Spieler auch ein Item in der Hand hält?
     
  4. GermanCrazyCraft
    Offline

    GermanCrazyCraft

    Registriert seit:
    25. Februar 2013
    Beiträge:
    19
    Minecraft:
    Nico2705
    Die Meldung kommt nur, wenn er ein anderes Item als die Ender-Chest in der hand hat.
     
  5. MiCrJonas
    Offline

    MiCrJonas

    Registriert seit:
    29. Oktober 2012
    Beiträge:
    1.064
    Geschlecht:
    männlich
    Du musst testen, ob der ItemStack auch ItemMeta hat (hasItemMeta()), bevor du auf dieses die Methode getDisplayName() aufrufst.
     
  6. Howha
    Offline

    Howha

    Registriert seit:
    10. April 2013
    Beiträge:
    42
    Minecraft:
    Howha
    Außerdem noch prüfen, ob der Spieler überhaupt ein Item in der Hand hat und ob dieses einen Displaynamen hat.
     
  7. GermanCrazyCraft
    Offline

    GermanCrazyCraft

    Registriert seit:
    25. Februar 2013
    Beiträge:
    19
    Minecraft:
    Nico2705
    Oke danke :D
     
  8. McPlayHD
    Offline

    McPlayHD

    Registriert seit:
    13. August 2013
    Beiträge:
    6
    Minecraft:
    McPlayHD
    und verwende doch mal das:
    Code (Text):
    1. if((e.getAction() == Action.RIGHT_CLICK_AIR) {