• 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!

Problem mit Vault Einbindung

gmb32

Kuhfänger
Registriert
17 Juni 2014
Beiträge
84
Diamanten
0
Hallo ich wollte mit IConomy programmieren so wie ich es immer mache doch wenn ich einen Spieler Geld geben will gibt es eine Fehler warnung.

Javascript:
public static Economy economy = null;

Javascript:
public static boolean setupEconomy() {

      

        if (Bukkit.getServer().getPluginManager().getPlugin("Vault") == null) {
            return false;
        }
        RegisteredServiceProvider<Economy> rsp = Bukkit.getServer().getServicesManager().getRegistration(Economy.class);
        if (rsp == null) {
            return false;
        }
        economy = rsp.getProvider();
        return economy != null;
    }

In der onEnable registriert

In der anderen Klasse

Javascript:
private Economy econ;
    public PlayerInteractListener() {
        this.econ = Main.economy;
     
    }

Ich kann auch drauf zugreifen doch

Code:
Could not pass event PlayerInteractEntityEvent to Neromania v0.1
org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[craftbukkit.jar:git-Bukkit-18fbb24]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Bukkit-18fbb24]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [craftbukkit.jar:git-Bukkit-18fbb24]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:486) [craftbukkit.jar:git-Bukkit-18fbb24]
        at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:1249) [craftbukkit.jar:git-Bukkit-18fbb24]
        at net.minecraft.server.v1_8_R3.PacketPlayInUseEntity.a(SourceFile:52) [craftbukkit.jar:git-Bukkit-18fbb24]
        at net.minecraft.server.v1_8_R3.PacketPlayInUseEntity.a(SourceFile:11) [craftbukkit.jar:git-Bukkit-18fbb24]
        at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [craftbukkit.jar:git-Bukkit-18fbb24]
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_181]
        at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_181]
        at net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44) [craftbukkit.jar:git-Bukkit-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:673) [craftbukkit.jar:git-Bukkit-18fbb24]
        at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:335) [craftbukkit.jar:git-Bukkit-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:629) [craftbukkit.jar:git-Bukkit-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:537) [craftbukkit.jar:git-Bukkit-18fbb24]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_181]
Caused by: java.lang.NullPointerException
        at de.axt.listener.PlayerInteractListener.onInteract(PlayerInteractListener.java:63) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_181]
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_181]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_181]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_181]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:300) ~[craftbukkit.jar:git-Bukkit-18fbb24]

In der Plugin.yml
Javascript:
depend: [Vault]
 

gmb32

Kuhfänger
Registriert
17 Juni 2014
Beiträge
84
Diamanten
0
Der Unterschied der beiden ist jetzt nicht so groß würde ich sagen

Javascript:
package de.axt.listener;


import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.HashMap;

import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerInteractEntityEvent;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;

import de.axt.main.Main;
import net.citizensnpcs.api.CitizensAPI;
import net.citizensnpcs.api.npc.NPC;
import net.milkbowl.vault.economy.Economy;



public class PlayerInteractListener implements Listener{

    private Economy econ = Main.economy;
    HashMap<Player, String> gespräch = new HashMap<>();
   
   
    @EventHandler
    public void onInteract(PlayerInteractEntityEvent e) {
        Player p = e.getPlayer();   
           
            if(e.getPlayer() == null) return;
            if(e.getRightClicked() == null) return;
            if(!e.getRightClicked().hasMetadata("NPC")) return;
            NPC npc = (NPC) CitizensAPI.getNPCRegistry().getNPC(e.getRightClicked());   
            File file = new File("plugins//Neromania//Jobs//"+p.getUniqueId().toString()+".yml");
            YamlConfiguration cfg = new YamlConfiguration().loadConfiguration(file);
           
            if(npc.getName().equals("§aMagnus")) {
                if(InventoryClickListener.job.containsKey(p)) {
                    if(InventoryClickListener.job.containsValue("Spitzhacke")) {
                        if(p.getInventory().getItemInHand().getType() == Material.IRON_PICKAXE &&p.getInventory().getItemInHand().getAmount() >= 1) {
                            ItemStack item = new ItemStack(Material.IRON_PICKAXE);
                            p.getInventory().removeItem(item);
                            p.sendMessage(Main.getPrefix()+"Du hast die Aufgabe erfolgreich abgeschlossen!");
                            p.sendMessage(Main.getPrefix()+"§a+100 Dukaten");
                            InventoryClickListener.job.remove(p, "Spitzhacke");
                            cfg.set("Spitzhacke", "abgeschlossen");
                            try {
                                cfg.save(file);
                            } catch (IOException e1) {
                                e1.printStackTrace();
                            }
                            econ.depositPlayer(p, 100);
                        }else {
                            p.sendMessage(Main.getPrefix()+"§cBitte nimm die Spitzhacke in die Hand!");
                        }
                       
                    }else if(InventoryClickListener.job.containsValue("Heuballen")) {
                        if(p.getInventory().getItemInHand().getType() == Material.HAY_BLOCK &&p.getInventory().getItemInHand().getAmount() >= 12) {
                            ItemStack item = new ItemStack(Material.HAY_BLOCK,12);
                            p.getInventory().removeItem(item);
                            p.sendMessage(Main.getPrefix()+"Du hast die Aufgabe erfolgreich abgeschlossen!");
                            p.sendMessage(Main.getPrefix()+"§a+100 Dukaten");
                            InventoryClickListener.job.remove(p, "Heuballen");
                            cfg.set("Heuballen", "abgeschlossen");
                            try {
                                cfg.save(file);
                            } catch (IOException e1) {
                                e1.printStackTrace();
                            }
                            econ.depositPlayer(p, 100);
                        }else {
                            p.sendMessage(Main.getPrefix()+"§cBitte nimm die Heuballen in die Hand!");
                        }
                       
                    }else if(InventoryClickListener.job.containsValue("Fisch")) {
                        if(p.getInventory().getItemInHand().getType() == Material.RAW_FISH &&p.getInventory().getItemInHand().getAmount() >= 5) {
                            ItemStack item = new ItemStack(Material.RAW_FISH,5);
                            p.getInventory().removeItem(item);
                            p.sendMessage(Main.getPrefix()+"Du hast die Aufgabe erfolgreich abgeschlossen!");
                            p.sendMessage(Main.getPrefix()+"§a+100 Dukaten");
                            InventoryClickListener.job.remove(p, "Fisch");
                            cfg.set("Fisch", "abgeschlossen");
                            try {
                                cfg.save(file);
                            } catch (IOException e1) {
                                e1.printStackTrace();
                            }
                            econ.depositPlayer(p, 100);
                        }else {
                            p.sendMessage(Main.getPrefix()+"§cBitte nimm die Fische in die Hand!");
                        }
                       
                    }else if(InventoryClickListener.job.containsValue("Apfel")) {
                        if(p.getInventory().getItemInHand().getType() == Material.APPLE &&p.getInventory().getItemInHand().getAmount() >= 10) {
                            ItemStack item = new ItemStack(Material.APPLE,10);
                            p.getInventory().removeItem(item);
                            p.sendMessage(Main.getPrefix()+"Du hast die Aufgabe erfolgreich abgeschlossen!");
                            p.sendMessage(Main.getPrefix()+"§a+100 Dukaten");
                            InventoryClickListener.job.remove(p, "Apfel");
                            cfg.set("Apfel", "abgeschlossen");
                            try {
                                cfg.save(file);
                            } catch (IOException e1) {
                                e1.printStackTrace();
                            }
                            econ.depositPlayer(p, 100);
                        }else {
                            p.sendMessage(Main.getPrefix()+"§cBitte nimm die Äpfel in die Hand!");
                        }
                       
                    }else if(InventoryClickListener.job.containsValue("Diamant")) {
                        if(p.getInventory().getItemInHand().getType() == Material.DIAMOND &&p.getInventory().getItemInHand().getAmount() >= 3) {
                            ItemStack item = new ItemStack(Material.DIAMOND,3);
                            p.getInventory().removeItem(item);
                            p.sendMessage(Main.getPrefix()+"Du hast die Aufgabe erfolgreich abgeschlossen!");
                            p.sendMessage(Main.getPrefix()+"§a+350 Dukaten");
                            InventoryClickListener.job.remove(p, "Diamant");
                            cfg.set("Diamant", "abgeschlossen");
                            try {
                                cfg.save(file);
                            } catch (IOException e1) {
                                e1.printStackTrace();
                            }
                            econ.depositPlayer(p, 350);
                        }else {
                            p.sendMessage(Main.getPrefix()+"§cBitte nimm die Diamanten in die Hand!");
                        }
                       
                    }else if(InventoryClickListener.job.containsValue("Rezept")) {
                        if(p.getInventory().getItemInHand().getType() == Material.PAPER &&p.getInventory().getItemInHand().getAmount() >= 1) {
                            ItemStack item = new ItemStack(Material.PAPER);
                            ItemMeta meta = item.getItemMeta();
                            meta.setDisplayName("§7geheimes Rezept");
                            item.setItemMeta(meta);
                            if(p.getItemInHand().isSimilar(item)) {
                                p.getInventory().removeItem(item);
                                p.sendMessage(Main.getPrefix()+"Du hast die Aufgabe erfolgreich abgeschlossen!");
                                p.sendMessage(Main.getPrefix()+"§a+250 Dukaten");
                                InventoryClickListener.job.remove(p, "Rezept");
                                cfg.set("Rezept", "abgeschlossen");
                                try {
                                    cfg.save(file);
                                } catch (IOException e1) {
                                    e1.printStackTrace();
                                }
                                econ.depositPlayer(p, 250);
                               
                            }else {
                                p.sendMessage(Main.getPrefix()+"Das ist nicht das Rezept!");
                            }
                        }else {
                            p.sendMessage(Main.getPrefix()+"§cBitte nimm das Rezept in die Hand!");
                        }
                       
                    }else if(InventoryClickListener.job.containsValue("Laterne")) {
                        if(p.getInventory().getItemInHand().getType() == Material.JACK_O_LANTERN &&p.getInventory().getItemInHand().getAmount() >= 5) {
                            ItemStack item = new ItemStack(Material.JACK_O_LANTERN,5);
                            p.getInventory().removeItem(item);
                            p.sendMessage(Main.getPrefix()+"Du hast die Aufgabe erfolgreich abgeschlossen!");
                            p.sendMessage(Main.getPrefix()+"§a+150 Dukaten");
                            InventoryClickListener.job.remove(p, "Laterne");
                            cfg.set("Laterne", "abgeschlossen");
                            try {
                                cfg.save(file);
                            } catch (IOException e1) {
                                e1.printStackTrace();
                            }
                            econ.depositPlayer(p, 150);
                        }else {
                            p.sendMessage(Main.getPrefix()+"§cBitte nimm die Laternen in die Hand!");
                        }
                       
                    }else if(InventoryClickListener.job.containsValue("Bett")) {
                        if(p.getInventory().getItemInHand().getType() == Material.BED &&p.getInventory().getItemInHand().getAmount() >= 1) {
                            ItemStack item = new ItemStack(Material.BED);
                            p.getInventory().removeItem(item);
                            p.sendMessage(Main.getPrefix()+"Du hast die Aufgabe erfolgreich abgeschlossen!");
                            p.sendMessage(Main.getPrefix()+"§a+50 Dukaten");
                            InventoryClickListener.job.remove(p, "Bett");
                            cfg.set("Bett", "abgeschlossen");
                            try {
                                cfg.save(file);
                            } catch (IOException e1) {
                                e1.printStackTrace();
                            }
                            econ.depositPlayer(p, 50);
                        }else {
                            p.sendMessage(Main.getPrefix()+"§cBitte nimm das Bett in die Hand!");
                        }
                       
                    }
                   
                }else {
                    InventoryClickListener.openJob(p);
                   
                }
                   
            }else if(npc.getName().equals("§aTheodor")) {
                if(InventoryClickListener.job.containsValue("Bruder")) {
                    p.sendMessage(Main.getPrefix()+"Du hast die Aufgabe erfolgreich abgeschlossen!");
                    p.sendMessage(Main.getPrefix()+"§a+50 Dukaten");
                    InventoryClickListener.job.remove(p, "Bruder");
                    cfg.set("Bruder", "abgeschlossen");
                    try {
                        cfg.save(file);
                    } catch (IOException e1) {
                        e1.printStackTrace();
                    }
                    econ.depositPlayer(p, 50);
                }
               
            }else if(npc.getName().equals("§aWilfried")) {
                if(InventoryClickListener.job.containsValue("Rezept")) {
                    ItemStack item = new ItemStack(Material.PAPER);
                    ItemMeta meta = item.getItemMeta();
                    meta.setDisplayName("§7geheimes Rezept");
                    item.setItemMeta(meta);
                    if(!p.getInventory().contains(item)) {
                        p.sendMessage(Main.getPrefix()+"Bitte bring dieses geheime Rezept schnellstmöglich zu Magnus!");
                        p.getInventory().addItem(item);
                        p.updateInventory();
                       
                    }else {
                        p.sendMessage(Main.getPrefix()+"Ich habe dir das Rezept schon gegeben!");
                    }

                }
               
            }else if(npc.getName().equals("§aKutscher")) {
               
                        Inventory inv = Bukkit.createInventory(null, 9,"§7Kutsche");
                        ItemStack item = new ItemStack(Material.TRIPWIRE_HOOK);
                        ItemMeta meta = item.getItemMeta();
                        meta.setDisplayName("§7Jagdgebiet");
                        meta.setLore(Arrays.asList("§e100€"));
                        item.setItemMeta(meta);
                        ///
                        ItemStack item2 = new ItemStack(Material.TRIPWIRE_HOOK);
                        ItemMeta meta2 = item2.getItemMeta();
                        meta2.setDisplayName("§7Handelsstadt");
                        meta2.setLore(Arrays.asList("§e100€"));
                        item2.setItemMeta(meta2);
                        ///
                        ItemStack item3 = new ItemStack(Material.TRIPWIRE_HOOK);
                        ItemMeta meta3 = item3.getItemMeta();
                        meta3.setDisplayName("§7Benawil");
                        meta3.setLore(Arrays.asList("§e100€"));
                        item3.setItemMeta(meta3);
                        ///
                        ItemStack item4 = new ItemStack(Material.TRIPWIRE_HOOK);
                        ItemMeta meta4 = item4.getItemMeta();
                        meta4.setDisplayName("§7Tribeon");
                        meta4.setLore(Arrays.asList("§e100€"));
                        item4.setItemMeta(meta4);
                        ///
                        inv.setItem(1, item2);
                        inv.setItem(0, item4);
                        inv.setItem(2, item3);
                        inv.setItem(3, item);
                        p.openInventory(inv);
                   
               
               
            }else if(npc.getName().equalsIgnoreCase("§aHerman")) {

                    Inventory inv = Bukkit.createInventory(null, 9*1,"§7Manufakturgeldbörse");
                    ItemStack item = new ItemStack(Material.INK_SACK);
                    item.setDurability((short)10);
                    ItemMeta meta = item.getItemMeta();
                    meta.setDisplayName("§a+1 Dukate");
                    item.setItemMeta(meta);
                    ///
                    ItemStack item2 = new ItemStack(Material.INK_SACK);
                    item2.setDurability((short)10);
                    ItemMeta meta2 = item2.getItemMeta();
                    meta2.setDisplayName("§a+10 Dukaten");
                    item2.setItemMeta(meta2);
                    ///
                    ItemStack item3 = new ItemStack(Material.INK_SACK);
                    item3.setDurability((short)10);
                    ItemMeta meta3 = item3.getItemMeta();
                    meta3.setDisplayName("§a+25 Dukaten");
                    item3.setItemMeta(meta3);
                    ///
                    ItemStack item4 = new ItemStack(Material.INK_SACK);
                    item4.setDurability((short)10);
                    ItemMeta meta4 = item4.getItemMeta();
                    meta4.setDisplayName("§a+100 Dukaten");
                    item4.setItemMeta(meta4);
                    ///
                    ItemStack item5 = new ItemStack(Material.INK_SACK);
                    item5.setDurability((short)1);
                    ItemMeta meta5 = item5.getItemMeta();
                    meta5.setDisplayName("§c-1 Dukate");
                    item5.setItemMeta(meta5);
                    ///
                    ItemStack item6 = new ItemStack(Material.INK_SACK);
                    item6.setDurability((short)1);
                    ItemMeta meta6 = item6.getItemMeta();
                    meta6.setDisplayName("§c-10 Dukaten");
                    item6.setItemMeta(meta6);
                    ///
                    ItemStack item7 = new ItemStack(Material.INK_SACK);
                    item7.setDurability((short)1);
                    ItemMeta meta7 = item7.getItemMeta();
                    meta7.setDisplayName("§c-25 Dukaten");
                    item7.setItemMeta(meta7);
                    ///
                    ItemStack item8 = new ItemStack(Material.INK_SACK);
                    item8.setDurability((short)1);
                    ItemMeta meta8 = item8.getItemMeta();
                    meta8.setDisplayName("§c-100 Dukaten");
                    item8.setItemMeta(meta8);
                    ///
                    File file2 = new File("plugins//Neromania//Manufaktur//Spieler.yml");
                    YamlConfiguration cfg2 = new YamlConfiguration().loadConfiguration(file2);
                    String name = cfg2.getString(p.getName()+".Manufaktur");
                    File file3 = new File("plugins//Neromania//Manufaktur//"+name+".yml");
                    YamlConfiguration cfg3 = new YamlConfiguration().loadConfiguration(file3);
                    ItemStack item9 = new ItemStack(Material.PAPER);
                    ItemMeta meta9 = item9.getItemMeta();
                    meta9.setDisplayName("§7Kontostand");
                    meta9.setLore(Arrays.asList("§e"+cfg.getInt(name+".Konto")));
                    item9.setItemMeta(meta9);
                    ///
                    inv.setItem(4, item9);
                    inv.setItem(8, item8);
                    inv.setItem(7, item7);
                    inv.setItem(6, item6);
                    inv.setItem(5, item5);
                    inv.setItem(3, item4);
                    inv.setItem(2, item3);
                    inv.setItem(0, item);
                    inv.setItem(1, item2);
                    p.openInventory(inv);
                   
               
            }
           
    }
}
 
D

deleted202832

Guest
Code:
public void onEnable() {
       if (!setupEconomy()) {
            System.out.println("Vault nicht geladen...");
            getServer().getPluginManager().disablePlugin(this);
           return;
           }
        loadListener();
        loadCommands();
        Instace = this;
   }

//Edit
Da war wohl einer etwas schneller als ich
 
Oben